60 (250)

60 (250)



Napiszemy program wykorzystując typ wyliczeniowy dla określenia elementów. Po wpisaniu elementu będzie go zliczał i pisał komunikat, wyświetlając jednocześnie informacje o liczbie policzonych elementów tego typu. Jeżeli użytkownik wpisze błędny element, zostanie o tym poinformowany.

program cw4_09;

{ Program wspomaga przeprowadzenie inwentaryzacji }

{ magazynu części komputerowych, ilustrując    }

{ zastosowanie typu wyliczeniowego.    }

{ Katalog r4_02 : 4_09.pas    }

type

TCzesci - (monitor, klawiatura, obudowa, dysk);

TMagazyn - array [TCzesci] of Integer;

const

NazwyElementow : array [TCzesci] of String -

('monitor', 'klawiatura', 'obudowa', 'dysk');

var

Element : TCzesci;

Magazyn : TMagazyn;

Znak : Char;

begin

for Element:-monitor to dysk do Magazyn[Element] 0; repeat

Writeln ('Podaj litere oznaczajaca element: ');

Write ('M - monitor, K - klawiatura, ',

'0 - obudowa, D - dysk, spacja - koniec: ');

Readln (Znak); Znak :- Upcase(Znak); Writeln; if (Znak-'M‘) then Element :- monitor else

if (Znak-'K') then Element :- klawiatura else

if (Znak-'0') then Element :- obudowa else

if (Znak-'D') then Element :- dysk else

if (Znak<>' ') then begin

Writeln (' Podano biedny znak. Nie zaliczono elementu'); end;

if ((Znak-'M‘) or (Znak«'K') or (Znak-'0') or (Znak-'D')) then begin

Inc (Magazyn[Element]);

Writeln (' Zaliczono element: ', NazwyElementow[Element], ' (',

Magazyn[Element], ')');

end;

until (Znak - ’ ');

Writeln ('Stan magazynu:');

Writeln (’——-----------');

for Element:-monitor to dysk do

Writeln (NazwyElementow[Element]:10, ': ', Magazyn[Element]:6);

Readln; end.

Winien jestem pewne wyjaśnienie tyczące się dziwnej pętli wypisującej stan magazynu. Otóż zmienna sterująca w pętli for może być dowolnego typu porządkowego, nie tylko liczbowego. Ponieważ dokładnie potrafimy określić, jakie elementy mogą się znaleźć kolejno pomiędzy monitorem i dyskiem, program nie będzie miał kłopotów ze zinterpretowaniem. Nada zmiennej Element kolejno wartości: monitor, klawiatura, obudowa, dysk. I


Wyszukiwarka

Podobne podstrony:
Zagadnienia do przygotowania na kolokwium I podstawy programowania w j, ezyku C++, typ wyliczeniowy,
231(3) Przełącznik programów przełączania biegów P27.60-2051-26 Program wykorzystywany do jazdy w
zadanie 1. Napisz program z menu jak poniżej: wykonujący podane czynności ■.a Po e jakiej figury chc
Wykorzystaj funkcję improfile dla określania profilu rozkładu jasności elementów obrazu wzdłuż wybra
Str. 12 Program Płace i Kadry (PIK) uzupełniamy Nazwę i Adres. Po wpisaniu urzędu akceptujemy wybór
Ćw. nr 5 - Emapa Transport - Wykorzystanie aplikacji komputerowych dla 2006-11-29 Rys. 3.3 Widok okn
Nadmiar i niedomiar w U2Wystąpienie nadmiaru lub niedomiaru wskazuje że programista źle dobrał typ d
Problem A - Duże liczbyZadanie Napisz program podający wyniki operacji arytmetycznych dla dużych lic
60.    Matematyka w segregatorze : program nauczania matematyki dla II i III etapu ed
Program: Wodór - Czyste Paliwo dla Przyszłości PCNiG Energetyka Wykorzystanie wodoru w energetyce
120 4 DLA PRAKTYKI WYKON,AJ PONIŻSZY PRZYKŁAD NAPISZ PROGRAM. W KTÓRYM NARZĘD2IE POKONUJE ODLEGŁOŚĆ
20 60.    Kierczak, Urszula : Program wychowania fizycznego dla czterech etapów
foto0 Komputerowe programy wspierania decyzji wymagają dla prawidłowego działania; *
image 060 60 Określenie pola w strefie dalekiej przy wykorzystaniu potencjałów wektorowych W celu ok
Modelowanie układu sterowania nawijarki taśmy stalowej 67 Rys. 2. Blok formuły programu LabView do w
Modelowanie układu sterowania nawijarki taśmy stalowej 67 Rys. 2. Blok formuły programu LabView do w
img01001 djvu 9 A reforma naszego szkolnictwa średniego? A programy języka i literatury polskiej dl

więcej podobnych podstron