Tablica jednowymiarowa

0

Mam do napisania program, "który wypełni tablicę jednowymiarową, 100-elementową liczbami losowymi z zakresu [70,170]. Obliczy ilość liczb większych od 100 i mniejszych od 120 i wyświetli na ekranie ich numery."

Wypełnienie tablicy elementami od 70 do 170 to żadna filozofia, problem mam z tą częścią programu:"Obliczy ilość liczb większych od 100 i mniejszych od 120 i wyświetli na ekranie ich numery."

 var   i,ilosc:integer;
      tab:array[1..100] of integer;
begin
  Randomize;
  for i:=1 to 100 do tab[i]:=70+Random(101);
  for i:=1 to 100 do Write(tab[i]:6);
  Readln;

  ilosc:=1;
  for i:=1 to 100 do
    if (i>100) and (i<120) then ilosc:=ilosc+i;
  Writeln('ilosc to=', ilosc);
  Readln
   end.
0

problem mam z tą częścią programu:"Obliczy ilość liczb większych od 100 i mniejszych od 120 i wyświetli na ekranie ich numery."

No tak, masz problem, i co to ma z nami wspólnego?
Tym razem Ci daruję bo reszta pytania dobrze zadana ale cholera w pytaniu powinno być pytanie. Załóżmy więc: Jak mogę to dopisać?

No i:
1.ilosc:=ilosc+i; - to nie będzie działać jak Ci się wydaje
2.jak porównujesz liczby to ich numer to po prostu i więc wystarczy go wywalić na stdout.

0
for i:=1 to 100 do tab[i]:=70+Random(101);
for i:=1 to 100 do Write(tab[i]:6);

Zamiast wykonywać dwa razy pętle możesz w jednej zawrzeć i wypełnienie pola daną liczbą i wyświetlenie jej na ekranie:

for I := 1 to 100 do
begin
  Tab[I] := Random(101) + 70;
  Write(Tab[I]:6);
end;

ilosc:=1;

A to na wejście już wiesz, że jedna liczba pasuje do wzorca...? Ustaw ją na 0 przed wyszukiwaniem;


-321oho napisał(a)

Załóżmy więc: Jak mogę to dopisać?

Niebywałe, Ty zgadujesz...? Wcześniej tego nie robiłeś, chyba dziś jest dzień dobroci dla newbie :]


EDIT:

if (i>100) and (i<120) then ilosc:=ilosc+i;

Źle wcześniej przeczytałem, przecież w treści zadania jest napisane, że po znalezieniu liczby z odpowiedniego przedziału trzeba wyświetlić jej numer, a nie liczyć ile takich liczb jest; "Jej numer" źle się kojarzy; Myślę, że chodzi o jej indeks w tablicy, który oczywiście odczytasz z licznika pętli;

0

Tak chodzi o indeksy liczb w tablicy.

0

No to podczas przeszukiwania tablicy i sprawdzania liczb w niej się znajdujących zamiast sumować ich ilość - wypisz indeks znalezionej liczby; Napisałem Ci wcześniej, że licznik pętli cały czas wskazuje Ci indeks aktualnie sprawdzanego elementu w tablicy, więc wystarczy po znalezieniu liczby z odpowiedniego przedziału wypisać I;

1 użytkowników online, w tym zalogowanych: 0, gości: 1