Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
public:wettbewerbe:sum [2011-01-28 13:55] simon |
public:wettbewerbe:sum [2013-01-21 09:48] (aktuell) daniel [Beispielprogramme] |
||
---|---|---|---|
Zeile 2: | Zeile 2: | ||
Given a sequence of n (0 < n < 1001) integer numbers a_1 to a_n with 0 < a_i <100 | Given a sequence of n (0 < n < 1001) integer numbers a_1 to a_n with 0 < a_i <100 | ||
- | compute the sum of all the a_i | + | compute the sum of all the a_i. |
Zeile 12: | Zeile 12: | ||
===== Output ===== | ===== Output ===== | ||
- | The output contains only the sum. | + | Output the sum followed by a newline character. |
===== Sample Input ===== | ===== Sample Input ===== | ||
Zeile 29: | Zeile 28: | ||
</code> | </code> | ||
===== Beispielprogramme ===== | ===== Beispielprogramme ===== | ||
+ | |||
+ | Hinweis: Die Zahlen müssen nicht erst in ein Array eingelesen werden, man | ||
+ | kann sich auch nur die aktuelle Summe merken. Die gewählte Variante dient nur | ||
+ | der Illustration von Arrays. | ||
=== Quellcode in C === | === Quellcode in C === | ||
<code c> | <code c> | ||
#include <stdio.h> | #include <stdio.h> | ||
- | + | ||
- | const int MAX_ARRAY_SIZE = 1000;· | + | #define MAX_ARRAY_SIZE 1000 |
- | + | ||
- | // Arrays global anlegen um Stapeluberlaeufe zu vermeiden. | + | |
int array[MAX_ARRAY_SIZE]; | int array[MAX_ARRAY_SIZE]; | ||
int array_size; | int array_size; | ||
+ | |||
int main(){ | int main(){ | ||
+ | int i,sum; | ||
// Mit scanf kann man einzelne ints einlesen. | // Mit scanf kann man einzelne ints einlesen. | ||
scanf("%d", &array_size); | scanf("%d", &array_size); | ||
- | for(int i=0; i<array_size; ++i){ | + | |
+ | for(i=0; i<array_size; ++i){ | ||
// Liesst das naechste int ein (und ueberspringt dabei | // Liesst das naechste int ein (und ueberspringt dabei | ||
// alle Leerzeichen, Tabs und Zeilenumbrueche). Das int | // alle Leerzeichen, Tabs und Zeilenumbrueche). Das int | ||
Zeile 49: | Zeile 53: | ||
scanf("%d", array + i); | scanf("%d", array + i); | ||
} | } | ||
+ | |||
// Nun verwenden wir die eingelesenen Daten | // Nun verwenden wir die eingelesenen Daten | ||
- | int sum = 0; | + | sum = 0; |
- | for(int i=0; i<array_size; ++i){ | + | for(i=0; i<array_size; ++i){ |
sum += array[i]; | sum += array[i]; | ||
} | } | ||
+ | |||
// Mit printf kann man ints und Zeilenumbrueche ausgeben. | // Mit printf kann man ints und Zeilenumbrueche ausgeben. | ||
printf("%d\n", sum); | printf("%d\n", sum); | ||
+ | |||
return 0; | return 0; | ||
} | } | ||
- | |||
</code> | </code> | ||