Kezdőoldal » Számítástechnika » Programozás » Egy érdekes feladat? Lehetsége...

Egy érdekes feladat? Lehetséges ez?

Figyelt kérdés
Kell készíteni egy olyan programot (tömbökkel), amely generál 8 számot, amelyek közül legalább egy negatív és ezeket a számokat össze kell adni az első negatív számig.
2014. aug. 15. 12:17
1 2 3
 11/28 A kérdező kommentje:
SimkoL köszi a hasznos választ! Ment a zöld kéz. A többieknek meg a piros (vagy öt karakterrel).
2014. aug. 16. 16:10
 12/28 anonim ***** válasza:
#5 vagyok. Nekem miért is? A kérdésre válaszoltam.
2014. aug. 16. 16:12
Hasznos számodra ez a válasz?
 13/28 A kérdező kommentje:
Végülis igazad van, te csak a kérdésre feleltél. Sorry!
2014. aug. 16. 16:39
 14/28 A kérdező kommentje:

SimkoL amúgy az nem volt feltétel, hogy az első szám mindenképp pozitív legyen. Én végülis felhasználva a tiedet ezt készitettem:


program pelda;

var a: array [1..8] of integer;

osszeg,i: integer;

begin

randomize;

for i:=1 to 8 do begin

a[i]:= random(20)-10;

write(a[i],', ');

end;

writeln;

osszeg:=0;

i:=1;

while (a[i]>0) do begin

osszeg:= osszeg+a[i];

Inc(i);

end;

write('Az elso negativ szamig a tombelemek osszege: ',osszeg);

readln;

end.

2014. aug. 16. 16:42
 15/28 anonim ***** válasza:

Első voltam, mondjuk én is a kérdésre válaszoltam.

Ráadásul megkaptál benne mindent ami kellett.


Itt amit írtál nekem nem nagyon tetszik, lehet Pascalban ez jó, de programozás szempontjából nem igazán.

A második ciklusban nincs az i-re terminálási feltétel. Azaz, ha minden elem pozitív, akkor csak pörög a ciklus és i nő. Ez C, C++ nyelvekben simán túlindexeli a tömböt és elkezdi a memória szemetet is beleszámolni.

2014. aug. 16. 17:07
Hasznos számodra ez a válasz?
 16/28 A kérdező kommentje:
Értem. Köszi erre nem is gondltam. Amúgy pascal-ban irom. Sajnos kevés időm van vele foglalkozni, így elkövetek hibákat.
2014. aug. 16. 17:12
 17/28 A kérdező kommentje:

Szerintem ez már jó, de lehet vannak benne még hibák.


program pelda;

var a: array [1..8] of integer;

osszeg,i,n: integer;

begin

randomize;

n:=random(8)+1;

writeln('A tomb merete: ',n);

randomize;

for i:=1 to n do begin

a[i]:= random(100)-50;

write(a[i],', ');

end;

writeln;

osszeg:=0;

i:=1;

while (a[i]>=0) and (i<9) do begin

osszeg:= osszeg+a[i];

Inc(i);

end;

write('Az elso negativ szamig a tombelemek osszege: ',osszeg);

readln;

end.

2014. aug. 16. 17:23
 18/28 SimkoL ***** válasza:
'amelyek közül legalább egy negatív' Futtass le egy tesztet, az általad generált számoknál átlagban 1000 esetben 4-szer nem teljesül. Úgy volt a jó ahogy én megírtam, mert úgy biztos lesz benne egy negatív. Ha az első nem pozitív akkor meg semmi értelme a feladatnak.
2014. aug. 16. 17:29
Hasznos számodra ez a válasz?
 19/28 SimkoL ***** válasza:
Az utolsó programodnál pedig n-ig (Random(8)+1) töltöd fel a tömböket, így a feltöltetlenek 0 értéküek lesznek.
2014. aug. 16. 17:36
Hasznos számodra ez a válasz?
 20/28 A kérdező kommentje:
Tehát ha a random(100)-50-et kicserélem random(1000)-500 ra akkor biztos lesz benne negativ?
2014. aug. 16. 17:50
1 2 3

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!