Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: PROBLÉM: Sčítání

Aktivity
Avatar
Jan Demel
Tvůrce
Avatar
Jan Demel:23.6.2013 21:59

Čaute, jsem začátečník v Javě. Ještě nedávno jsem něco dělal v C# a vidím, že to jsou skoro stejné jazyky. Mám tu ale menší problém.

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package javaapplication2;
import java.util.Scanner;

/**
 *
 * @author HonDemik
 */
public class JavaApplication2 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in, "Windows-1250");


        for (int i = 0; i<5; i++)
        {
            int cislo = Integer.parseInt(sc.nextLine());
            int vysledek = vysledek + cislo;

            System.out.println(vysledek);

        }
    }
}

Prosím, upoutejte své pohledy na řádek int vysledek = vysledek + cislo;.
Můžete mi vysvětlit, proč mi to v NETBeans ten druhý výsledek červeně podtrhuje ?

Chtěl jsem docílit programu, který bude přičítat čísla.

Editováno 23.6.2013 22:01
Odpovědět
23.6.2013 21:59
To co se zdá být nemožné, je vždy možné.
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Jan Demel
Petr Nymsa:23.6.2013 22:02

Jelikož se snažíš do in vysledek přiřadit neexistující / neinicializovanou proměnnou vysledek tak to skončí chybou :). Stačí přeci dát

int vysledek = cislo;

ale lepší bude rovnou tohle

System.out.println(cislo);
Nahoru Odpovědět
23.6.2013 22:02
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Jan Demel
Tvůrce
Avatar
Jan Demel:23.6.2013 22:03

No chtěl jsem to udělat ale tak, že se ty čísla budou neustále přičítat k sobě ;) Třeba napíšu 2, potom 3 a ukáže mi to 5. potom napíšu zase 4 a ono to ukáže 9 ;)

Nahoru Odpovědět
23.6.2013 22:03
To co se zdá být nemožné, je vždy možné.
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Jan Demel
Petr Nymsa:23.6.2013 22:04

Tak int vysledek nejdříve incializuj před cyklem for

int vysledek = 0
Nahoru Odpovědět
23.6.2013 22:04
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Jan Demel
Kit:23.6.2013 22:05

Protože v tom řádku používáš proměnnou výsledek (vpravo od rovnítka) ještě před deklarací (vlevo od rovnítka). Prostě takhle ti to fungovat nebude a ani fungovat nemá.

Nahoru Odpovědět
23.6.2013 22:05
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Jan Demel
Tvůrce
Avatar
Odpovídá na Petr Nymsa
Jan Demel:23.6.2013 22:06

Dík moc ;) Už to funguje :)

Nahoru Odpovědět
23.6.2013 22:06
To co se zdá být nemožné, je vždy možné.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.