Benutzer-Werkzeuge

Webseiten-Werkzeuge


public:wettbewerbe:sum

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte Überarbeitung Beide Seiten der Revision
public:wettbewerbe:sum [2011-01-28 13:53]
simon
public:wettbewerbe:sum [2013-01-21 09:47]
daniel [Output]
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 28: Zeile 27:
 45 45
 </​code>​ </​code>​
 +===== Beispielprogramme =====
  
-===== Java Code =====+=== Quellcode in C === 
 +<code c> 
 +#include <​stdio.h>​ 
 +  
 +#define MAX_ARRAY_SIZE 1000 
 +  
 +int array[MAX_ARRAY_SIZE];​ 
 +int array_size;​ 
 +  
 +int main(){ 
 +    int i,sum; 
 +    // Mit scanf kann man einzelne ints einlesen. 
 +    scanf("​%d",​ &​array_size);​
  
-**Compiler-Aufruf:​** ''​javac Main.java''​\\ +    ​for(i=0; ​i<​array_size; ++i){ 
-**Ausführung:​** ''​java Main''​ +        // Liesst das naechste int ein (und ueberspringt dabei 
-<​code>​ +        // alle Leerzeichen,​ Tabs und Zeilenumbrueche). Das int 
-import java.util.Scanner;​ +        // wir an die i-te Stelle des Arrays gespeichert. 
- +        scanf("​%d",​ array + i); 
-class Main { +    } 
- public static void main(String[]args){ +  
- Scanner s = new Scanner(System.in);​ +    // Nun verwenden wir die eingelesenen Daten 
-  +    ​sum = 0; 
-                int[] num = new int[1000];​ +    for(i=0; i<array_size; ++i){ 
- +        sum += array[i]; 
-  +    } 
-                ​for(int i = 0; s.hasNextInt(); ++i) +  
-                        num[i] = s.nextInt(); +    // Mit printf kann man ints und Zeilenumbrueche ausgeben. 
- +    printf("​%d\n", ​sum); 
- int sum = 0; +  
- for(int i=0; i<num.length; ++i) +    return 0;
- sum += num[i]; +
- +
- System.out.println(sum); +
-        }+
 } }
 </​code>​ </​code>​
  
-===== C++ Code ===== +=== Quellcode in C++ === 
-**Compiler-Aufruf:​** ''​g++ -O2 -Wall yourfile.cpp''​\\ +<code c++>
-**Ausführung:​** ''​./​a.out''​ +
- +
-<code>+
 #include <​iostream>​ #include <​iostream>​
 +
 using namespace std; using namespace std;
  
-// Ein Array ist nicht wirklich notwendig. Es geht nur +const int MAX_ARRAY_SIZE = 1000;· 
-// darum die Syntax ​zu zeigen+ 
-int num_count+// Arrays global anlegen um Stapeluberlaeufe ​zu vermeiden
-int num[1000];+int array[MAX_ARRAY_SIZE]
 +int array_size;
  
 int main(){ int main(){
- num_count ​= 0; +    // Mit cin kann man einzelne ints einlesen. 
- while(cin>>​num[num_count]+    cin >> array_size;​ 
- ++num_count;+    for(int i=0; i<​array_size;​ ++i){ 
 +        // Liesst das naechste int ein (und ueberspringt dabei 
 +        // alle Leerzeichen,​ Tabs und Zeilenumbrueche). Das int 
 +        // wir an die i-te Stelle des Arrays gespeichert. 
 +        ​cin >> ​array[i]; 
 +    }
  
- int sum = 0; +    // Nun verwenden wir die eingelesenen Daten 
- for(int i=0; i<num_count; ++i) +    ​int sum = 0; 
- sum += num[i];+    for(int i=0; i<array_size; ++i){ 
 +        sum += array[i]; 
 +    }
  
- cout<<​sum<<​endl;​ +    // Mit cout kann man ints und Zeilenumbrueche (endl) ausgeben. 
- return 0;+    ​cout << sum << endl; 
 + 
 +    ​return 0;
 } }
 +
 </​code>​ </​code>​
  
-===== C code ===== 
  
-**Compiler-Aufruf:​** ''​gcc -lm -O2 -Wall yourfile.cpp''​\\ +=== Quellcode in Java === 
-**Ausführung:​** ''​./​a.out''​ +<​code ​java
-<​code>​ +import java.util.Scanner;​
-#include <stdio.h>+
  
-// Ein Array ist nicht wirklich notwendigEs geht nur +class Main { 
-// darum die Syntax zu zeigen+    public static void main(String[] args) { 
-int num_count+        Scanner s = new Scanner(System.in); 
-int num[1000];+         
 +        int array_size = s.nextInt(); 
 +        int[] array = new int[array_size]
 +        for(int i=0; i<​array_size;​ ++i){ 
 +            array[i= s.nextInt(); 
 +        }
  
-int main(){ +        ​int sum = 0; 
- int i, sum;    +        for(int i=0; i<​array_size;​ ++i){ 
-  +            ​sum ​+= array[i]; 
- num_count ​= 0; +        }
- while(scanf("​%d",​ &​num[num_count]) > 0)  +
- ++num_count;+
  
- sum = 0+        System.out.println(sum)
- for(i = 0; i<​num_count;​ ++i) +    } 
- sum += num[i];+}
  
- printf("​%d\n",​ sum); 
- return 0; 
-} 
 </​code>​ </​code>​
- 
- 
- 
- 
public/wettbewerbe/sum.txt · Zuletzt geändert: 2013-01-21 09:48 von daniel