ich wollte euch mal an meinen Ergebnissen der Abgabe für morgen Mittag teilhaben lassen. Ich kann aber jetzt nur die Programmieraufgaben, ohne Ankreuzfragen, mitteilen, weil ich weiß, dass diese funktionieren und ein paar Routinen grün waren. Ich hoffe, es hilft ein wenig :).
Aufgabe 1:
[code]
program MaximumAusEingabe (input, output);
var
Counter, { Zaehler }
Zahl, { Durch den User einzugebende/eingegebene Zahl }
Maximum : integer; { Das ermittelte Maximum }
begin
{ Den User ueber die Vorgehensweise des Programms informieren }
WriteLn ('Bitte geben Sie eine beliebige Folge von integer-Zahl ein.');
WriteLn ('Das Programm ermittelt den maximalen Wert aus den eingegeben Zahlen.');
WriteLn ('Die Eingabe der Zahl 0 beendet Ihre Eingabe.');
WriteLn ('Zulaessige Zahlen: ', maxint, ' bis -', maxint);
{ bei mir 32767 bis -32767 | Wieso laeuft die Pascal-Implementierung auf 16 Bit?? }
{ Eingabe der ersten Zahl durch den User }
WriteLn ('1. Wert eingeben:');
ReadLn(Zahl);
{ Pruefen, ob es sich um eine 0 handelt }
if Zahl = 0 then
WriteLn('Leere Eingabefolge!')
else
Maximum := Zahl; { Die Zahl ist keine 0 und wird als derzeitiges Maximum gesetzt }
Counter := 1; { Die erste Eingabe ist erfolgt, d.h. der Zaehler wird auf 1 gesetzt }
{ while-Schleife zur Eingabe der Zahlen durch den User solange ausfuehren bis eine 0 eingegeben wird }
while Zahl <> 0 do
begin
{ Zaehler um 1 erhoehen }
Counter := Counter + 1;
{ Den User die Zahl eingeben lassen und auslesen }
WriteLn (Counter, '. Wert eingeben:');
ReadLn(Zahl);
{ Falls die eingegeben Zahl groesser als unsere bisher ermittelte maximale Zahl ist, wird die eingegeben Zahl als neues Maximum gesetzt }
if Zahl > Maximum then
Maximum := Zahl;
{ Falls die Bedingung der while-Schleife erfuellt ist (User hat 0 eingegeben) wird die Schleife abgebrochen }
end;
{ Ausgabe des ermittelten maximalen Werts }
WriteLn('Der maximale Wert Ihrer Eingabe ist ', Maximum);
ReadLn
end.
[/code]
Aufgabe 2:
[code]
begin
i:=1;
j:=1;
k:=1;
while(i\<=FELDLAENGE1)AND(j\<=FELDLAENGE2) do\
begin\
if( Feld1\[i\]\<=Feld2\[j\]) then\
begin\
ErgebnisFeld\[k\] := Feld1\[i\];\
i:=i+1\
end {if}\
else\
begin\
ErgebnisFeld\[k\] := Feld2\[j\];\
j:=j+1\
end;{else}\
k:=k+1 {das gehoert hierhin, da immer ein Element einsortiert wird! }\
end; {while}
{Sortiere die restlichen Zahlen des anderen Feldes in ErgebnisFeld}\
if(i \> FELDLAENGE1) then\
begin\
while(j \<= FELDLAENGE2) do\
begin\
ErgebnisFeld\[k\] := Feld2\[j\];\
j:=j+1;\
k:=k+1;\
end;\
end\
else\
begin\
while(i \<= FELDLAENGE1) do\
begin\
ErgebnisFeld\[k\] := Feld1\[i\];\
i:=i+1;\
k:=k+1;\
end;\
end;\
end;
[/code]
Aufgabe 3:
[code]
var
ZeilenZaehler : 1..ZEILENMAX;
SpaltenZaehler : 1..SPALTENMAX;
ZeilenSumme,
SpaltenSumme : integer;
Kleiner : boolean;
begin
Kleiner := true;
ZeilenSumme := 0;
SpaltenSumme := 0;
for SpaltenZaehler := 1 to SPALTENMAX do
ZeilenSumme := ZeilenSumme + inMatrix[inZeilenNr, SpaltenZaehler];
SpaltenZaehler := 1;
while (SpaltenZaehler <= SPALTENMAX) AND (Kleiner = true) do
begin
for ZeilenZaehler := 1 to ZEILENMAX do
SpaltenSumme := SpaltenSumme + inMatrix[ZeilenZaehler, SpaltenZaehler];
if ZeilenSumme > SpaltenSumme then
Kleiner := false;
SpaltenZaehler := SpaltenZaehler + 1;
end;
ZeilenSummeKleiner := Kleiner
[/code]
Bei den restlichen Aufgaben kann ich euch empfehlen, diese einfach in einen Editor zu stecken und dort auszuführen. Dann kann mann sehr gut sehen, was passiert und was unter Umständen richtig oder falsch ist.
Beste Grüße
aruka
Comments
mf85
Contributions on this page: 1
View profileEine "schlankere" Alternative zu Aufgabe 1:
[code]
program MaximumAusEingabe (input, output);
{ bestimmt das Maximum einer Folge von einzulesenden integer-Zahlen }
var
Zahl,
Maximum : integer;
begin
writeln ('Geben Sie die integer-Zahlen ein. ',
'0 beendet die Eingabe.');
readln (Zahl);
Maximum := Zahl;
while Zahl <> 0 do
begin
if Zahl > Maximum then
Maximum := Zahl;
readln (Zahl)
end;
if Maximum <> 0 then
writeln ('Die größte Zahl lautet ', Maximum, '.')
else
writeln ('Leere Eingabefolge!')
end. { MaximumAusEingabe }
[/code]
Michih33
Contributions on this page: 1
View profileDas ist echt gut!
Ezzahrany
Contributions on this page: 1
View profilewie sieht aus mit den anderen Aufgaben habt euch eine Antwort?