background image

program grupa1_0570; 

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 
 
var T : array[1..10,1..10] of Integer; 
  var w, k, i, j, ile, m, n, max, max1, max2, wspi, wspj, q, el: Integer; 
  var suma, s, sr, iloczyn : Real; 
  var p: boolean; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
For i:=1 to w do 
   For j:=1 to k do 
       begin 
       write('Podaj element [',i,',',j,']: '); 
       readln(T[i,j]); 
       end; 
//wyszukiwanie najwiekszych elementow 
max := T[1,1]; 
wspi := 1; 
wspj := 1; 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
      if T[i,j]>max then 
      begin 
      max := T[i,j]; 
      wspi := i; 
      wspj := j; 
      end; 
   end; 
writeln('Najwieksza wprowadzona wartosc wynosi: ',max,' i znajduje sie ona w wierszu nr: ',wspi,' i 
kolumnie nr: ',wspj); 
 
el:=w*k; 
//wyszukiwanie pozostałych wartosci najwieskzch - takich samych jak znaleziona 
 
   For i:=1 to w do 
   For j:=1 to k do 

background image

   begin 
    if (T[i,j]=max) then 
    if (i<>wspi) or (j<>wspj) then 
    writeln('Taka sama wartosc znajduje sie tez w wierszu nr: ',i,' i kolumnie nr: ',j); 
   end; 
   
//iloczyn dowch najwiekszych elementow tabeli    - pierwszy juz mamy teraz tylko drugi 
max1 := max; 
max2 := T[1,1]; 
 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
    For m:=1 to w do 
    For n:=1 to k do 
     if (wspi<>i) or (wspj<>j) then 
     if  (i<>m) or (j<>n) then 
     if (T[i,j]>max2) then 
     max2 := T[i,j]; 
    end; 
 
    iloczyn := max1*max2; 
    write('Iloczyn dwoch najwikeszych liczb w tabeli (',max1,'*',max2,') wynosi: ',iloczyn:5:2); 
     writeln; 
 
     //ile jest 0 w tabeli 
     ile :=0; 
For i:=1 to w do 
   For j:=1 to k do 
    if (T[i,j]=0) then 
     ile := ile + 1; 
writeln('Zer w tabeli jest: ',ile); 
 
 
//wypisanie tabeli - NIE DZIAŁA 
For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(T[i,j]:40); 
end; 
 
 
writeln('Sprawdzanie czy w tablicy sa liczby powtarzajace sie [TAK/NIE]'); 
p := false; 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
    For m:=1 to w do 
    For n:=1 to k do 
     if (i<>m) and (j<>n) and (T[i,j]=T[m,n]) then 
       p := true; 

background image

    end; 
        
If p = false then 
  write('NIE') 
  else 
  write('TAK'); 
 
readln; 
end.

 

program grupa2_0571; 

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 
 
var T : array[1..10,1..10] of Real; 
var min_w: array[1..10] of Integer; 
var min_k: array[1..10] of Integer; 
  var w, k, i, j, ile, m, n, wspi, wspj, q : Integer; 
  var suma, s, sr, iloczyn, min, min1, min2 : Real; 
  var p: boolean; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
For i:=1 to w do 
   For j:=1 to k do 
       begin 
       write('Podaj element [',i,',',j,']: '); 
       readln(T[i,j]); 
       end; 
 
//wyszukiwanie najmniejszych elementow 
 q:=1; 
min := T[1,1]; 
wspi := 1; 
wspj := 1; 
 
For i:=1 to w do 
   For j:=1 to k do 
 

background image

      if T[i,j]<min then 
      begin 
      min := T[i,j]; 
      wspi := i; 
      wspj := j; 
      min_w[q] := i; 
      min_k[q] := j; 
      end; 
 
writeln('Najmniejsza wprowadzona wartosc wynosi: ',min:5:2,' i znajduje sie ona w wierszu nr: ',wspi,' 
i kolumnie nr: ',wspj); 
 
 
//wyszukiwanie pozostałych wartosci najmniejszych - takich samych jak znaleziona 
 
   For i:=1 to w do 
   For j:=1 to k do 
    if (T[i,j]=min) then 
    if (i<>wspi) or (j<>wspj) then 
    begin 
    q:=q+1; 
    writeln('Taka sama wartosc znajduje sie tez w wierszu nr: ',i,' i kolumnie nr: ',j); 
    min_w[q] := i; 
    min_k[q] := j; 
    end; 
 
   
 
//iloczyn dowch najmniejszych elementow tabeli 
min1 := T[1,1]; 
min2 := T[1,1]; 
wspi := 1; 
wspj := 1; 
For i:=1 to w do 
   For j:=1 to k do 
 
     if (T[i,j]<min1) then 
     begin 
     min1 := T[i,j]; 
     wspi := i; 
     wspj := j; 
     end; 
 
 
For m:=1 to w do 
   For n:=1 to k do 
   begin 
 
     if (T[m,n]<min2) then 
     if (wspi<>m) or (wspj<>n)  then 
      min2 := T[m,n]; 
    end; 

background image

 
    iloczyn := min1*min2; 
    write('Iloczyn dwoch najmniejszych liczb w tabeli (',min1:5:2,'*',min2:5:2,') wynosi: ',iloczyn:5:2); 
     writeln; 
 
 
//wypisanie tabeli z wartosciami minimalnymi?? i ich współrzędne 
 For i:=1 to q do 
 begin 
 writeln('Wartosc minimalna: ',min:5:2); 
 writeln; 
 writeln; 
 writeln('Wspolrzedne tej wartosci najmniejszej wynosza: ',min_w[i],',',min_k[i]); 
 end; 
 
     //wypisanie 
For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   writeln(T[i,j]:20:2); 
end; 
 
 
writeln('Sprawdzanie czy w tablicy sa liczby powtarzajace sie [TAK/NIE]'); 
p := false; 
For i:=1 to w do 
   For j:=1 to k do 
      begin 
      For m:=1 to w do 
         For n:=1 to k do 
         if (i<>m) or (j<>n)  then 
         if  (T[i,j]=T[m,n]) then 
         p := true; 
      end; 
 
If p = false then 
  write('NIE') 
  else 
  write('TAK'); 
 
 
readln; 
end. 

 

program grupa3_0568; 

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 

background image

 
var T : array[1..10,1..10] of Integer; 
  var w, k, i, j, ile1, suma, o, s : Integer; 
  var sr : Real; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
ile1:=0; 
 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
   repeat 
   write('Podaj elment tablicy[',i,',',j,']: '); 
   readln(T[i,j]); 
   if T[i,j]<=0 then 
   ile1 := ile1 + 1; 
   until (T[i,j]>0); 
   end; 
 
  writeln; 
 
  //dodawanie wszystkich liczb 
 
suma := 0; 
For i:=1 to w do 
   For j:=1 to k do 
         suma := suma + T[i,j]; 
write('Suma wszystkich elementow tablicy wynosi: ',suma); 
   writeln; 
 
 
   //liczenie sredniej wartosci w wybranym wierszu 
   writeln; 
repeat 
write('Wybierz wiersz z ktorego ma byc policzona srednia: '); 
readln(o); 
until (o>=1) and (o<=w); 
 
s := 0; 
 
   For i:=1 to w do 
   For j:=1 to k do 

background image

   if i=o then 
      begin 
         s := s + T[o,j]; 
      end; 
 
sr := s/k; 
write('Srednia elemntow wiersza ',o,' wynosi: ', sr:10:2); 
 
 
//obliczenie ile liczb odrzucono podzcas czytywania 
write('Podczas wczytywania odrzucono: ',ile1,' liczb.'); 
 
//wypisywanie przy lewej krawędzi - NIE DZIAŁA 
For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(T[i,j]:20); 
end; 
 
readln; 
end. 

 

program grupa4_0576; 

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 
 
var T : array[1..10,1..10] of Real; 
  var w, k, i, j, ile, m: Integer; 
  var suma, s, sr : Real; 
  var p: boolean; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
For i:=1 to w do 
   For j:=1 to k do 
       begin 
       write('Podaj element [',i,',',j,']: '); 
       readln(T[i,j]); 

background image

       end; 
 
       //sumowanie liczb ujemnych 
suma := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if T[i,j]<0 then 
         suma := suma + T[i,j]; 
write('Suma elementow ujemnych tablicy wynosi: ',suma:5:2); 
 
 
//pominiete 0 i dodatnie razem 
ile :=0; 
For i:=1 to w do 
   For j:=1 to k do 
      if T[i,j]>=0 then 
         ile := ile + 1; 
writeln; 
writeln; 
write('Ilosc pominietych elemntow tablicy wynosi: ',ile); 
 
//liczenie sredniej wartosci w wybranej kolumnie 
   writeln; 
repeat 
write('Wybierz kolumne z ktorej ma byc policzona srednia: '); 
readln(m); 
until (m>=1) and (m<=k); 
 
s := 0; 
For i:=1 to w do 
   For j:=1 to k do 
   if j=m then 
      begin 
         s := s + T[i,j]; 
      end; 
 
sr := s/w; 
write('Srednia elemntow kolumny ',m,' wynosi: ', sr:10:2); 
 
 
//wypisywanie przy lewej krawędzi - NIE DZIAŁA 
For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(T[i,j]:80:2); 
end; 
 
//czy istnieje elementy przekraczajace zakres typu SHORT 
writeln('Sprawdzanie czy w tablicy sa liczby przekraczajace zakres typu SHORT [TAK/NIE]'); 
p := false; 
For i:=1 to w do 

background image

   For j:=1 to k do 
   if (T[i,j]<(-128)) or (T[i,j]>127) then 
        p := true; 
 
If p = false then 
  write('NIE') 
  else 
  write('TAK'); 
 
readln; 
end. 

 

program grupa5_0577; 

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 
 
var T : array[1..10,1..10] of Integer; 
var w, k, i, j, ile1, ile2, m, n, min1, min2, iloczyn, max, suma, wspi, wspj : Integer; 
 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
   write('Podaj elment tablicy[',i,',',j,']: '); 
   readln(T[i,j]); 
   end; 
 
  writeln; 
 
  //dodawanie liczb z zakresu 0 do 7 
 
suma := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if (T[i,j]>=0) and (T[i,j]<=7)  then 
         suma := suma + T[i,j]; 
write('Suma elementow nalezacych do przedzialu [0..7] tablicy wynosi: ',suma:5); 

background image

   writeln; 
 
//ilosc elementow pominietych wiekszych od 7 
ile1 := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if (T[i,j]>7)  then 
         ile1 := ile1 + 1; 
write('ILOSC elementow nalezacych do przedzialu [7 wzwyz] tablicy wynosi: ',ile1:5); 
      writeln; 
 
//ilosc elementow pominietych UJEMNYCH 
ile2 := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if (T[i,j]<0)  then 
         ile2 := ile2 + 1; 
write('ILOSC elementow nalezacych do przedzialu [liczby ujemne] tablicy wynosi: ',ile2:5); 
      writeln; 
 
//iloczyn dwoch najmniejszych elementow tabeli 
min1 := T[1,1]; 
min2 := T[1,1]; 
wspi := 1; 
wspj := 1; 
For i:=1 to w do 
   For j:=1 to k do 
 
     if (T[i,j]<min1) then 
     begin 
     min1 := T[i,j]; 
     wspi := i; 
     wspj := j; 
     end; 
 
 
For m:=1 to w do 
   For n:=1 to k do 
   begin 
 
     if (T[m,n]<min2) then 
     if (wspi<>m) or (wspj<>n)  then 
      min2 := T[m,n]; 
    end; 
 
    iloczyn := min1*min2; 
    write('Iloczyn dwoch najmniejszych liczb w tabeli (',min1:5,'*',min2:5,') wynosi: ',iloczyn:5); 
     writeln; 
 
//wypisanie tabeli - NIE DZIAŁA 
For i:=1 to w do 
begin 

background image

   writeln; 
   For j:=1 to k do 
   write(T[i,j]:30); 
end; 
     writeln; 
//ustalenie zakresu 
max := T[1,1]; 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
    For m:=1 to w do 
    For n:=1 to k do 
     if (T[i,j]>max) then 
     max := T[i,j]; 
    end; 
write('Zakres liczb w tablicy wynosi: MAX: ',max,' MIN: ',min1); 
 
readln; 
end. 

 

program grupa6_0574; 

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 
 
var T : array[1..10,1..10] of Integer; 
  var w, k, i, j, ile, suma, s, el : Integer; 
  var sr : Real; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
 
 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
   repeat 
   write('Podaj elment tablicy[',i,',',j,']: OCENE Z ZAKRESU [2..5] - liczbe calkowita '); 
   readln(T[i,j]); 
   until (T[i,j]>=2) and (T[i,j]<=5); 

background image

   end; 
 
  writeln; 
 
  //dodawanie wszystkich liczb 
 
suma := 0; 
For i:=1 to w do 
   For j:=1 to k do 
         suma := suma + T[i,j]; 
write('Suma wszystkich ocen w tablicy wynosi: ',suma); 
   writeln; 
 
 
   //liczenie sredniej wartosci ocen 
 
s := 0; 
 
   For i:=1 to w do 
   For j:=1 to k do 
      begin 
         s := s + T[i,j]; 
      end; 
el := w*k; 
sr := s/el; 
write('Srednia wartosc ocen wynosi: ', sr:10:2); 
 
 
//obliczenie ile ocen przewyzsza wartosc sredniej 
ile := 0; 
   For i:=1 to w do 
   For j:=1 to k do 
 
   if T[i,j]>sr then 
      ile := ile + 1; 
write('Ilosc ocen powyzej sredniej: ',ile); 
 
//wypisywanie przy lewej krawędzi - NIE DZIAŁA 
 
For i := 1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(T[i,j]:40); 
end; 
 
 
readln; 
end. 

 

program grupa7_0573; 

background image

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 
 
var T : array[1..10,1..10] of Real; 
 
  var w, k, i, j, ile, m, n, q, e, h : Integer; 
  var suma, s, sr, iloraz, min, min1, min2, max : Real; 
  var p: boolean; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
For i:=1 to w do 
   For j:=1 to k do 
       begin 
       write('Podaj element [',i,',',j,']: '); 
       readln(T[i,j]); 
       end; 
 
       //suma liczb z zakresu od 3 do 9 
suma := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if (T[i,j]<=9) and (T[i,j]>=3) then 
         suma := suma + T[i,j]; 
write('Suma elementow z zakresu od 3 do 9 tablicy wynosi: ',suma:5:2); 
 
   //wypisanie 
 
   For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(T[i,j]:80:2); 
end; 
 
 
//iloraz największego i najmniejszego elemntu 
iloraz:=0; 
max := T[1,1]; 
min := T[1,1]; 

background image

For i:=1 to w do 
   For j:=1 to k do 
   begin 
      if T[i,j]>max then 
      max := T[i,j]; 
      if T[i,j]<min then 
      min := T[i,j]; 
   end; 
iloraz := max/min; 
writeln('Iloraz elemntu maksymalnego tablicy, który wynosi: ',max:5:2,' do minimalnego, który 
wynosi: ',min:5:2,' jest rowny: ',iloraz:5:2); 
 
 
 
writeln('Sprawdzanie czy w tablicy sa liczby powtarzajace sie [TAK/NIE]'); 
p := false; 
For i:=1 to w do 
   For j:=1 to k do 
      begin 
      For m:=1 to w do 
         For n:=1 to k do 
         if (i<>m) or (j<>n)  then 
         if  (T[i,j]=T[m,n]) then 
         p := true; 
      end; 
 
If p = false then 
  write('NIE') 
  else 
  write('TAK'); 
 
ile :=0; 
For i:=1 to w do 
   For j:=1 to k do 
      if T[i,j]=0 then 
         ile := ile + 1; 
writeln; 
 
writeln('Zer w tablicy jest: ',ile); 
 
 
 
 
readln; 
end. 

 

program grupa8_0566; 

 
{$APPTYPE CONSOLE} 
 
uses 

background image

  SysUtils; 
 
var M : array[1..10,1..10] of Real; 
  var w, k, i, j, ile0, iled,  o: Integer; 
  var suma, s, sr : Real; 
  var p: boolean; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
For i:=1 to w do 
   For j:=1 to k do 
       begin 
       write('Podaj element [',i,',',j,']: '); 
       readln(M[i,j]); 
       end; 
 
       //sumowanie liczb ujemnych 
suma := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if M[i,j]<0 then 
         suma := suma + M[i,j]; 
write('Suma elementow ujemnych tablicy wynosi: ',suma:5:2); 
 
 
//pominiete 0 
ile0 :=0; 
For i:=1 to w do 
   For j:=1 to k do 
      if M[i,j]=0 then 
         ile0 := ile0 + 1; 
write('Ilosc pominietych 0 w tablicy wynosi: ',ile0); 
 
//pominiete dodatnie 
iled :=0; 
For i:=1 to w do 
   For j:=1 to k do 
      if M[i,j]>0 then 
         iled := iled + 1; 
write('Ilosc pominietych elemntow dodatnich tablicy wynosi: ',iled); 
 
//liczenie sredniej wartosci w wybranym wierszu 
   writeln; 

background image

repeat 
write('Wybierz wiersz z ktorego ma byc policzona srednia: '); 
readln(o); 
until (o>=1) and (o<=w); 
 
s := 0; 
 
   For i:=1 to o do 
      if i=o then 
   For j:=1 to k do 
         s := s + M[o,j]; 
 
 
sr := s/w; 
write('Srednia elemntow wiersza ',o,' wynosi: ', sr:10:2); 
 
 
//wypisywanie przy lewej krawędzi - NIE DZIAŁA 
For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(M[i,j]:80:2); 
end; 
 
//czy istnieje elementy przekraczajace zakres typu BYTE 
writeln('Sprawdzanie czy w tablicy sa liczby pprzekraczajace zakres typu BYTE [TAK/NIE]'); 
p := false; 
For i:=1 to w do 
   For j:=1 to k do 
   if (M[i,j]<0) or (M[i,j]>255) then 
        p := true; 
 
If p = false then 
  write('NIE') 
  else 
  write('TAK'); 
 
readln; 
end. 

 

program grupa9_0567; 

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 
 
var T : array[1..10,1..10] of Integer; 
  var w, k, i, j, ile1, m, n, max1, max2, iloczyn, min, suma, wspi, wspj, max, min1 : Integer; 
 

background image

begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
   write('Podaj elment tablicy[',i,',',j,']: '); 
   readln(T[i,j]); 
   end; 
 
  writeln; 
 
  //dodawanie liczb z zakresu -3 do 3 
 
suma := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if (T[i,j]>=-3) and (T[i,j]<=3)  then 
         suma := suma + T[i,j]; 
write('Suma elementow nalezacych do przedzialu [-3..3] tablicy wynosi: ',suma); 
   writeln; 
 
 //iloczyn dowch najwiekszych elementow tabeli - pierwszy juz mamy teraz tylko drugi 
 
 
max1 := T[1,1]; 
max2 := T[1,1]; 
wspi := 1; 
wspj := 1; 
For i:=1 to w do 
   For j:=1 to k do 
 
     if (T[i,j]>max1) then 
     begin 
     max1 := T[i,j]; 
     wspi := i; 
     wspj := j; 
     end; 
 
 
For m:=1 to w do 
   For n:=1 to k do 
   begin 

background image

 
     if (T[m,n]>max2) then 
     if (wspi<>m) or (wspj<>n)  then 
      max2 := T[m,n]; 
    end; 
 
    iloczyn := max1*max2; 
    write('Iloczyn dwoch najwiekszych liczb w tabeli (',max1:5,'*',max2:5,') wynosi: ',iloczyn:5); 
     writeln; 
 
 
//wypisanie tabeli - NIE DZIAŁA 
For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(T[i,j]:40); 
end; 
 
//ilosc elementow dwucyfrowych w tabeli 
ile1 := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if (T[i,j]>9) or (T[i,j]<(-9)) then 
         ile1 := ile1 + 1; 
write('ILOSC elementow dwucyfrowych w tabeli tablicy wynosi: ',ile1:5); 
      writeln; 
 
//wypisanie tabeli - NIE DZIAŁA 
For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(T[i,j]:10); 
end; 
     writeln; 
//ustalenie zakresu 
max := T[1,1]; 
min := T[1,1]; 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
    For m:=1 to w do 
    For n:=1 to k do 
     if (T[i,j]>max) then 
     max := T[i,j]; 
      if (T[i,j]<min) then 
     min := T[i,j]; 
    end; 
write('Zakres liczb w tablicy wynosi: MAX: ',max,' MIN: ',min); 
 
readln; 

background image

end. 

 

program grupa10_0575; 

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 
 
var T : array[1..10,1..10] of Integer; 
  var w, k, i, j, ile, suma, s, el, max, min, m, n : Integer; 
  var sr, sr_w : Real; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
 
 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
   repeat 
   write('Podaj elment tablicy[',i,',',j,']: OCENE Z ZAKRESU [2..5] - liczbe calkowita '); 
   readln(T[i,j]); 
   until (T[i,j]>=2) and (T[i,j]<=5); 
   end; 
 
  writeln; 
 
 
 
 
   //liczenie sredniej wartosci ocen 
 
s := 0; 
 
   For i:=1 to w do 
   For j:=1 to k do 
      begin 
         s := s + T[i,j]; 
      end; 
el := w*k; 
sr := s/el; 

background image

write('Srednia wartosc ocen wynosi: ', sr:10:2); 
       writeln; 
//policzenie sredniej dla kazdego wiersza 
 
For i:=1 to w do 
begin 
suma:=0; 
   For j:=1 to k do 
         suma := suma + T[i,j]; 
         sr_w := suma/k; 
writeln('Srednia elemntow wiersza ',i,' wynosi: ', sr_w:10:2); 
      end; 
 
    writeln; 
 
 
//obliczenie ile ocen przewyzsza wartosc sredniej 
ile := 0; 
   For i:=1 to w do 
   For j:=1 to k do 
 
   if T[i,j]>sr then 
      ile := ile + 1; 
write('Ilosc ocen powyzej sredniej: ',ile); 
       writeln; 
//wypisywanie przy lewej krawędzi - NIE DZIAŁA 
 
For i := 1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(T[i,j]:40); 
end; 
      writeln; 
    //ustalenie zkaresu ocen 
 
min := T[1,1]; 
max := T[1,1]; 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
    For m:=1 to w do 
    For n:=1 to k do 
     if (T[i,j]>max) then 
     max := T[i,j]; 
     if (T[i,j]<min) then 
     min := T[i,j]; 
    end; 
write('Zakres ocen w tablicy wynosi: MAX: ',max,' MIN: ',min); 
 
 
 

background image

readln; 
end. 

 

program grupa11_0578; 

 
{$APPTYPE CONSOLE} 
 
uses 
  SysUtils; 
 
var M : array[1..10,1..10] of Real; 
  var w, k, i, j, ile, o, n: Integer; 
  var suma, max, min, iloraz : Real; 
  var p: boolean; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
For i:=1 to w do 
   For j:=1 to k do 
       begin 
       write('Podaj element [',i,',',j,']: '); 
       readln(M[i,j]); 
       end; 
writeln; 
suma := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if (M[i,j]>=0) and (M[i,j]<=9) then 
         suma := suma + M[i,j]; 
write('Suma elementow [0..9]: ',suma:5:2); 
 
writeln; 
 
//wyswietlanie tablicy - NIE DZIAŁA 
write('Macierz: '); 
For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(M[i,j]:40:2); 
end; 
 writeln; 

background image

 
//iloraz największego i najmniejszego elemntu 
iloraz:=0; 
max := M[1,1]; 
min := M[1,1]; 
For i:=1 to w do 
   For j:=1 to k do 
   begin 
      if M[i,j]>max then 
      max := M[i,j]; 
      if M[i,j]<min then 
      min := M[i,j]; 
   end; 
iloraz := max/min; 
write('Iloraz elemntu maksymalnego tablicy, który wynosi: ',max:5:2,' do minimalnego, który wynosi: 
',min:5:2,' jest rowny: ',iloraz:5:2); 
writeln; 
//liczenie elementow ujemnych 
ile :=0; 
For i:=1 to w do 
   For j:=1 to k do 
      if M[i,j]<=(-10) then 
         ile := ile + 1; 
write('Ilosc elemento ujemnych dwucyfrowych: ',ile); 
writeln; 
 
writeln('Sprawdzanie czy w tablicy sa liczby powtarzajace sie [TAK/NIE]'); 
p := false; 
For i:=1 to w do 
   For j:=1 to k do 
      begin 
      For o:=1 to w do 
         For n:=1 to k do 
         if (i<>o) or (j<>n)  then 
         if  (M[i,j]=M[o,n]) then 
         p := true; 
      end; 
 
If p = false then 
  write('NIE') 
  else 
  write('TAK'); 
 
readln; 
end. 

 

program grupa12; 

 
{$APPTYPE CONSOLE} 
 
uses 

background image

  SysUtils; 
 
var T : array[1..10,1..10] of Real; 
  var w, k, i, j, ile, m: Integer; 
  var suma, s, sr : Real; 
  var p: boolean; 
begin 
 
repeat 
  write('Podaj liczbe wierszy w macierzy [1..10]: '); 
  readln(w); 
until (w>0) AND (w<11); 
 
repeat 
  write('Podaj liczbe kolumn w macierzy [1..10]: '); 
  readln(k); 
until (k>0) AND (k<11); 
 
For i:=1 to w do 
   For j:=1 to k do 
       begin 
       write('Podaj element [',i,',',j,']: '); 
       readln(T[i,j]); 
       end; 
 
suma := 0; 
For i:=1 to w do 
   For j:=1 to k do 
      if T[i,j]<0 then 
         suma := suma + T[i,j]; 
write('Suma elementow ujemnych tablicy wynosi: ',suma:5:2); 
 
ile :=0; 
For i:=1 to w do 
   For j:=1 to k do 
      if T[i,j]>=0 then 
         ile := ile + 1; 
writeln; 
writeln; 
write('Ilosc pominietych elemntow tablicy wynosi: ',ile); 
   writeln; 
repeat 
write('Wybierz kolumne z ktorej ma byc policzona srednia: '); 
readln(m); 
until (m>=1) and (m<=k); 
 
s := 0; 
For i:=1 to w do 
   For j:=1 to k do 
   if j=m then 
      begin 
         s := s + T[i,j]; 

background image

      end; 
 
sr := s/w; 
write('Srednia elemntow kolumny ',m,' wynosi: ', sr:10:2); 
 
For i:=1 to w do 
begin 
   writeln; 
   For j:=1 to k do 
   write(T[i,j]:80:2); 
end; 
writeln('Sprawdzanie czy w tablicy sa liczby mniejsze niz dwucyfrowe (ujemne) [TAK/NIE]'); 
p := false; 
For i:=1 to w do 
   For j:=1 to k do 
   if (T[i,j]>(-10)) and (T[i,j]<0) then 
        p := true; 
 
If p = false then 
  write('NIE') 
  else 
  write('TAK'); 
 
readln; 
end.