1/4 Ćwiczenie 1. Przeanalizuj poniższy przykład na zastosowanie

Transkrypt

1/4 Ćwiczenie 1. Przeanalizuj poniższy przykład na zastosowanie
12. Tablice, typ danych char, operator logiczny or
Ćwiczenie 1. Przeanalizuj poniższy przykład na zastosowanie tablicy złożonej z 6 znaków.
KOD
{$APPTYPE CONSOLE}
var
znaki : array[1..6] of char;
i : integer;
begin
znaki[1]:= 'P';
znaki[2]:= 'a';
znaki[3]:= 's';
znaki[4]:= 'c';
znaki[5]:= 'a';
znaki[6]:= 'l';
for i:=1 to 6 do
write(znaki[i]);
// wyświetlenie i-tego znaku tablicy
writeln(#10, #10, 'Czwarty znak tablicy znaki to: ', znaki[4]);
readln;
end.
WYJŚCIE
Pascal
Piaty znak tablicy znaki to: a
Ćwiczenie 2. Ułóż program, który zapamięta w tablicy wczytane z klawiatury cztery dowolne
znaki, a następnie całą jej zawartość wyświetli na ekranie.
KOD
{$APPTYPE CONSOLE}
var
znak : array [1..4] of char;
i : integer;
begin
writeln('Podaj cztery dowolne znaki:');
for i:=1 to 4 do
readln(znak[i]);
//wczytuje znaki do tablicy
write('Podales znaki: ');
for i:=1 to 4 do
write(znak[i]);
//wyświetla znaki tablicy
readln;
end.
WYJŚCIE
Podaj cztery dowolne znaki:
w
#
7
Podales znaki: w#7-
Opracował: Aleksander Piętowski
1/4
12. Tablice, typ danych char, operator logiczny or
Ćwiczenie 3. Zmodyfikuj program z ćwiczenia drugiego w ten sposób, aby znaki wyświetlane były
w odwrotnej kolejności.
KOD
{$APPTYPE CONSOLE}
var
znak : array [1..4] of char;
i : integer;
begin
writeln('Podaj cztery dowolne znaki:');
for i:=1 to 4 do
readln(znak[i]);
write('Znaki w odwrotnej kolejnosci: ');
for i:=4 downto 1 do
write(znak[i]);
readln;
end.
WYJŚCIE
Podaj cztery dowolne znaki:
I
K
A
R
Znaki w odwrotnej kolejnosci: RAKI
Ćwiczenie 4. Utwórz tablicę złożoną z 6 liczb całkowitych. Zainicjalizuj tablicę dowolnymi
wartościami, oblicz sumę i średnią arytmetyczną tych liczb.
KOD
{$APPTYPE CONSOLE}
var
liczby : array[1..6] of integer = (5,2,7,2,3,14);
i : integer;
suma : integer = 0;
begin
for i:=1 to 6 do
suma:= suma + liczby[i];
writeln('Suma liczb w tablicy liczby wynosi: ', suma);
writeln('Srednia arytmetyczna tych liczb to: ', suma/6:0:2);
readln;
end.
WYJŚCIE
Suma liczb w tablicy liczby wynosi: 33
Srednia arytmetyczna tych liczb to: 5.50
Opracował: Aleksander Piętowski
2/4
12. Tablice, typ danych char, operator logiczny or
Ćwiczenie 5. Ułóż program, który za pomocą pętli wczyta do tablicy dwuwymiarowej 10 x 10
tabliczkę mnożenia, a następnie wyświetli ją na ekranie.
KOD
{$APPTYPE CONSOLE}
var
tabliczka : array[1..10,1..10] of integer;
j, k : integer;
begin
for j:=1 to 10 do
for k:=1 to 10 do
tabliczka[j][k]:= j*k;
for j:=1 to 10 do
for k:=1 to 10 do
write(tabliczka[j][k],#9);
// przechodzenie po wierszach
// przechodzenie po kolumnach (po elementach w wierszu)
readln;
end.
WYJŚCIE
1
2
3
4
5
6
7
8
9
10
2
4
6
8
10
12
14
16
18
20
3
6
9
12
15
18
21
24
27
30
4
8
12
16
20
24
28
32
36
40
5
10
15
20
25
30
35
40
45
50
6
12
18
24
30
36
42
48
54
60
7
14
21
28
35
42
49
56
63
70
8
16
24
32
40
48
56
64
72
80
9
18
27
36
45
54
63
72
81
90
10
20
30
40
50
60
70
80
90
100
► blok kodu umieszczony na szarym prostokącie można zredagować w inny sposób
(porównaj poniżej)
KOD
{$APPTYPE CONSOLE}
var
tabliczka : array[1..10,1..10] of integer;
j, k : integer;
begin
for j:=1 to 10 do
for k:=1 to 10 do
tabliczka[j][k]:= j*k;
for j:=1 to 10 do
begin
for k:=1 to 10 do
write(tabliczka[j][k]:4);
writeln;
end;
readln;
end.
WYJŚCIE
1
2
3
4
5
6
7
8
9
10
2
4
6
8
10
12
14
16
18
20
3
6
9
12
15
18
21
24
27
30
4
8
12
16
20
24
28
32
36
40
5
10
15
20
25
30
35
40
45
50
6
12
18
24
30
36
42
48
54
60
7
14
21
28
35
42
49
56
63
70
8
16
24
32
40
48
56
64
72
80
9 10
18 20
27 30
36 40
45 50
54 60
63 70
72 80
81 90
90 100
Opracował: Aleksander Piętowski
3/4
12. Tablice, typ danych char, operator logiczny or
Ćwiczenie 6. Napisz program z wykorzystaniem tablicy jednowymiarowej i pliku tekstowego.
W pliku umieść liczby całkowite (osobno w każdym wierszu). Zadaniem programu
jest wczytanie do tablicy liczb z pliku, a następnie wypisanie z tej tablicy liczb
podzielnych przez dwa.
ZAWARTOŚĆ PLIKU ‘dane.txt’
11
2
34
41
51
16
234
-4
5
KOD
{$APPTYPE CONSOLE}
var
p : text;
liczba : array[1..100] of integer;
i, k : integer;
begin
assign(p, 'dane.txt');
reset(p);
i:= 0;
while not eof(p) do
begin
i:= i+1;
readln(p, liczba[i]);
end;
for k:=1 to i do
if liczba[k] mod 2 = 0 then
writeln(liczba[k]);
close(p);
readln;
end.
WYJŚCIE
2
34
16
234
-4
Opracował: Aleksander Piętowski
4/4