szukanie zaawansowane
 [ Posty: 4 ] 
Autor Wiadomość
Mężczyzna Offline
 Tytuł: Free Pascal
PostNapisane: 3 lut 2011, o 21:00 
Użytkownik

Posty: 1
Lokalizacja: wrocław
Witam, proszę o pomoc w napisaniu następujących programów, na tablicach.

1) Program z wykorzystaniem 20-sto elementowej tablicy, wartości mają być wygenerowane z zakresu od -5 do 14. Wartości ujemne należy zastąpić 0 i wydrukować na ekranie.

2) Napisz program wczytujący ciąg n liczb rzeczywistych, wydrukuj na ekranie te spośród liczb, których indeks jest parzysty.

3) Napisz program wprowadzający dane do dziesięcio-elementowej tablicy i wprowadź najpierw liczby parzyste, potem nieparzyste.
Góra
Mężczyzna Offline
 Tytuł: Free Pascal
PostNapisane: 4 lut 2011, o 09:08 
Użytkownik

Posty: 795
Lokalizacja: Tarnów
No to dajesz. Pokaż swój kod a my pomagamy i znajdujemy błędy.
Góra
Mężczyzna Offline
 Tytuł: Free Pascal
PostNapisane: 8 lut 2011, o 20:01 
Użytkownik

Posty: 2
Lokalizacja: Tarnów/okolic
ad1.

Kod:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
program tablica1;
uses crt;
var
 a:byte;
 tablica:array[1..20] of integer;
begin
clrscr;
 randomize;
 for a:=1 to 20 do
 begin
  tablica[a]:=random (20);
  tablica[a]:=tablica[a]-5;
  if tablica[a]<0 then begin
                        tablica[a]:=0;
                        writeln (tablica[a]);
                       end
                  else begin
                         writeln (tablica[a]);
                        end;
 end;
readln;
end.


ad 2 (nie wiem czy dokładnie o to chodziło :D)

Kod:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
program wczyt;
uses crt;
var
tablica:array[1..10] of integer;
a:byte;
begin
clrscr;
for a:=1 to 10 do
  begin
   writeln ('Podaj ',a,' liczbe');
   readln (tablica[a]);
  end;
writeln;
for a:=1 to 10 do
  begin
   if tablica[a] mod 2 = 0 then writeln (tablica[a]);
  end;
readln;
end.


ad 3

Kod:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
program tablica2;
uses crt;
var
 tablica:array[1..10] of integer;
 a:byte;
begin
clrscr;
 for a:=1 to 10 do
  begin
   writeln ('Podaj ',a,' liczbe');
   readln (tablica[a]);
  end;
 writeln;
 writeln ('Liczby parzyste');
 for a:=1 to 10 do
  begin
   if tablica[a]/2=tablica[a] div 2 then writeln (tablica[a]);
  end;
 writeln;
 writeln ('Liczby nieparzyste');
 for a:=1 to 10 do
  begin
   if tablica[a]/2 <> tablica[a] div 2 then writeln (tablica[a]);
  end;
  readln;
end.
Góra
Mężczyzna Offline
 Tytuł: Free Pascal
PostNapisane: 9 lut 2011, o 11:00 
Użytkownik

Posty: 795
Lokalizacja: Tarnów
ad 2. Masz wypisać elementy tablicy których indeks jest parzysty a nie który element jest parzysty (wypisujesz poprostu co drugi element).

ad 3. Tu warto zastosować warunek w if'ie, że liczba parzysta jest wtedy kiedy przy dzieleniu przez 2 daje resztę równą 0. Zatem
Kod:
1
if(tablica[a] mod 2 = 0)


Reszta wydaję się być w porządku.
Góra
Utwórz nowy temat Odpowiedz w temacie  [ Posty: 4 ] 


 Zobacz podobne tematy
 Tytuł tematu   Autor   Odpowiedzi 
 Free Pascal  Goja  4
 free pascal - zadanie 6  klaudekk  9
 Free Pascal - zadanie 4  astrodon  4
 Free Pascal - zadanie 5  paulinka_89  7
 [Pascal] Szczęśliwe Liczby Losowanie Problem  Avoid  0
 
Atom [Regulamin Forum] [Instrukcja LaTeX-a] [Poradnik] [F.A.Q.] [Reklama] [Kontakt]
Copyright (C) ParaRent.com