Podstawy Informatyki - Laboratorium
Politechnika Świętokrzyska, Wydział Elektrotechniki, Automatyki i Informatyki
Turbo Pascal
Instrukcja laboratoryjna nr 3
Opracował: dr inż. Grzegorz Słoń
Tablice
Dany jest ciąg n liczb całkowitych. Napisać program wprowadzający te liczby do tablicy jednowymiarowej, a następnie wyświetlający je na ekranie monitora po 5 liczb w wierszu.
program z3_1;
var a: array[1..50] of integer;
i,n: integer;
begin
write('Ile bedzie liczb?: '); readln(n);
for i:=1 to n do
begin
write(i,' liczba: '); readln(a[i]);
end;
writeln;
writeln('Wprowadzono nastepujace liczby:');
for i:=1 to n do
begin
write(a[i]:5,' ');
if i mod 5 = 0 then writeln;
end;
writeln;
readln;
end.
Dany jest ciąg n liczb rzeczywistych. Napisać program wyznaczający ilość liczb większych od ostatniej liczby ciągu.
program z3_2;
var a: array[1..50] of real;
i,n,wynik: integer;
begin
write('Ile bedzie liczb?: '); readln(n);
for i:=1 to n do
begin
write(i,' liczba: '); readln(a[i]);
end;
writeln;
wynik:=0;
for i:=1 to n-1 do
if a[i]>a[n] then wynik:=wynik+1;
writeln;
writeln('Ilosc liczb wiekszych od ostatniej liczby ciagu = ',wynik);
readln;
end.
Dany jest ciąg n znaków. Napisać program sprawdzający, czy ciąg ten jest palindromem.
program z3_3;
var a: array[1..50] of char;
i,j,n: integer;
p: boolean;
begin
write('Ile bedzie znakow?: '); readln(n);
for i:=1 to n do
begin
write(i,' znak: '); readln(a[i]);
end;
p:=true;
i:=1; j:=n;
while i<j do
begin
if a[i]<>a[j] then p:=false;
i:=i+1;
j:=j-1;
end;
writeln;
write('Podany ciag znakow ');
if p then write('jest')
else write('nie jest');
writeln(' palindromem.');
readln;
end.
Zmodyfikować program z punktu 2 tak, aby wyznaczał sumę i ilość liczb większych od średniej arytmetycznej wszystkich elementów ciągu.
Dany jest ciąg n liczb całkowitych umieszczonych w tablicy jednowymiarowej a. Napisać program przepisujący do tablicy jednowymiarowej b wszystkie liczby dodatnie i wyświetlający na ekranie monitora zawartość tablicy b.
program z3_4;
var a,b: array[1..50] of integer;
i,n,k: integer;
begin
write('Ile bedzie liczb?: '); readln(n);
for i:=1 to n do
begin
write(i,' liczba: '); readln(a[i]);
end;
k:=0;
for i:=1 to n do
if a[i]>0 then begin
k:=k+1;
b[k]:=a[i];
end;
writeln('Do tablicy ''b'' przepisano nastepujace liczby:');
for i:=1 to k do
write(b[i]:8);
writeln;
readln;
end.
Uzupełnić program z punktu 5 o wyznaczenie średniej geometrycznej liczb w tablicy b.
Dana jest macierz liczb rzeczywistych o wymiarach (m × n). Napisać program wprowadzający te liczby do tablicy dwuwymiarowej, a następnie wyświetlający tę tablicę na ekranie monitora.
program z3_5;
var a: array[1..10,1..10] of real;
i,j,m,n: integer;
begin
writeln('Podaj wymiary tablicy:');
write('Liczba wierszy m = '); readln(m);
write('Liczba kolumn n = '); readln(n);
for i:=1 to m do
begin
writeln(i,' wiersz: ');
for j:=1 to n do
begin
write(j,' kolumna: '); readln(a[i,j]);
end;
end;
writeln;
writeln('Wprowadzono nastepujaca tablice:');
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j]:7:2,' ');
writeln;
end;
readln;
end.
Dana jest macierz kwadratowa liczb całkowitych o wymiarach (n × n) umieszczona w tablicy dwuwymiarowej a. Napisać program wyświetlający na ekranie monitora liczby leżące na obu przekątnych tablicy.
program z3_6;
var a: array[1..10,1..10] of integer;
i,j,n: integer;
begin
write('Wymiar tablicy n = '); readln(n);
for i:=1 to n do
begin
writeln(i,' wiersz: ');
for j:=1 to n do
begin
write(j,' kolumna: '); readln(a[i,j]);
end;
end;
writeln;
writeln('Liczby na glownej przekatnej:');
for i:=1 to n do
write(a[i,i]:7,' ');
writeln;
writeln('Liczby na przeciwnej przekatnej:');
for i:=1 to n do
write(a[i,n-i+1]:7,' ');
readln;
end.
Zmodyfikować program z punktu 8 tak, aby wyznaczał również średnie arytmetyczne liczb leżących na przekątnych.
Dany jest n elementowy ciąg liczb rzeczywistych. Napisać program obliczający ile liczb ma wartości pomiędzy wartością minimalną a średnią arytmetyczną, a ile - pomiędzy średnią a wartością maksymalną.
Dany jest ciąg liczb rzeczywistych umieszczony w tablicy dwuwymiarowej o wymiarach (n × n). Napisać program obliczający sumy liczb znajdujących się nad i pod główną przekątną tablicy.
Dany jest ciąg liczb całkowitych umieszczony w tablicy dwuwymiarowej a o wymiarach (m × n). Napisać program wstawiający do tablicy jednowymiarowej b średnie arytmetyczne z kolejnych wierszy tablicy a.
str. 2/3 Turbo Pascal - Instrukcja nr 3
Turbo Pascal - Instrukcja nr 3 str. 3/3