Čo odovzdávať

Program by mal čítať zo štandardného vstupu (stdin) a vypisovať na štandardný výstup (stdout), ak nie je v úlohe uvedené inak. Výstup musí dodržiavať formát definovaný v zadaní. Nezabudnite na konci každého riadku vypísať znak nového riadku (\n).

Príklady korektných programov

Ako riešenie úlohy “na vstupe je číslo n - počet čísel a na ďalšom riadku je niekoľko celých čísel, spočítajte ich a vypíšte ich súčet” by sme uznali nasledujúce programy:

C

#include <stdio.h>

int main(void) {
  int x, c, TOTAL = 0;
  scanf("%d", &c);

  while (scanf("%d", &x) == 1)
    TOTAL += x;

  printf("%d\n", TOTAL);
  return 0;
}

C++

#include <iostream>
using namespace std;

int main(void) {
  int x, c, TOTAL = 0;
  cin >> c;

  while (cin >> x)
    TOTAL += x;

  cout << TOTAL << endl;

  return 0;
}

C#

using System;

class Program {
    static void Main() {
        int n = int.Parse(Console.ReadLine());

        string[] numbers = Console.ReadLine().Split();
        int sum = 0;

        for (int i = 0; i < n; i++) {
            sum += int.Parse(numbers[i]);
        }

        Console.WriteLine(sum);
    }
}

Go

package main

import (
    "fmt"
)

func main() {
    var x, c, TOTAL int
    fmt.Scan(&c)

    for {
        _, err := fmt.Scan(&x)
        if err != nil {
            break
        }
        TOTAL += x
    }

    fmt.Println(TOTAL)
}

Haskell

main :: IO ()
main = do
    n <- readLn :: IO Int
    numbers <- fmap (map read . words) getLine :: IO [Int]
    print $ sum numbers

Java

Testovanie Javy je trochu komplikovanejšie, keďže pri kompilácii súbory premenúvame. Aby všetko fungovalo ako má, zdroják musí obsahovať práve jednu vonkajšiu classu a táto classa nesmie byť public.

Spustená bude metóda main dotyčnej vonkajšej classy. (Vovnútri vonkajšej classy môžete deklarovať iné classy, ak chcete/potrebujete.)

Ďalej, zdrojový kód v Jave nesmie byť deklarovaný ako súčasť nejakého package.

import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = Integer.parseInt(scanner.nextLine());
        String[] numbers = scanner.nextLine().split(" ");
        int sum = 0;
        for (int i = 0; i < n; i++) {
            sum += Integer.parseInt(numbers[i]);
        }
        System.out.println(sum);
    }
}

Javascript

const readline = require('readline');

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.question('', (n) => {
    rl.question('', (line) => {
        const numbers = line.split(' ').map(Number);
        const sum = numbers.reduce((acc, num) => acc + num, 0);
        console.log(sum);
        rl.close();
    });
});

Python / PyPy

c = int(input())

print(sum([int(x) for x in input().split()]))

Rust

use std::io;

fn main() {
    let _ = io::stdin().read_line(&mut String::new());

    let mut line = String::new();
    let _ = io::stdin().read_line(&mut line);

    let nums: Vec<i32> = line.split_whitespace()
        .map(|x| x.parse::<i32>().expect("Not an integer!"))
        .collect();

    let sum: i32 = nums.iter().sum();

    println!("{}", sum);
}

Typescript

const readline = require("readline");

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

rl.question('', (n: string) => {
    rl.question('', (line: string) => {
        const numbers = line.split(' ').map(Number);
        const sum = numbers.reduce((acc, num) => acc + num, 0);
        console.log(sum);
        rl.close();
    });
});