Får inte mitt program att skriva ut antalet imatade tal (Java)

Permalänk
Medlem

Får inte mitt program att skriva ut antalet imatade tal (Java)

Hej har ett litet problem med ett program där jag skall mata in x antal variabler och när jag skriver in en "0:a" så skall programmet skriva ut antalet inskrivna tal, undantaget 0:an då förstås. Programmet fungerar så långt att det bryter när jag matar in en 0:a.
Men det vill inte skriva ut antalet variabler som jag matat in.
Någon vänlig själ som kan se vad jag missat?

O.B.S är rätt så ny vad gäller programmering så ha överseende :).
Tack på förhand.

Min kod ser ut så här:

import java.util.Scanner; public class P33 { public static void main(String[] args){ Scanner rekna = new Scanner(System.in); int tal = 1; int total= 0; while(tal>0){ tal = rekna.nextInt(); for(int n=1;n>=10 ;n++){ tal = rekna.nextInt(); if(tal>0) { total = n++; } else if(tal<=0){ System.out.println("Antal imatade tal" +total); } } } } }

Tack på förhand

Visa signatur

Dator #1: | Intel i5 4670K | 8 GB ram | GTX 770 2GB|Samsung 840 120 GB SSD|Samsung 850 EVO 250GB | ASUS Z87-A|
Dator #2: | Intel C2D E6750 | 2 GB ram | 8800GTS 640MB | 500GB HD | Gigabyte P35-DS4|

Permalänk
Medlem
Skrivet av ALI:

Hej har ett litet problem med ett program där jag skall mata in x antal variabler och när jag skriver in en "0:a" så skall programmet skriva ut antalet inskrivna tal, undantaget 0:an då förstås. Programmet fungerar så långt att det bryter när jag matar in en 0:a.
Men det vill inte skriva ut antalet variabler som jag matat in.
Någon vänlig själ som kan se vad jag missat?

O.B.S är rätt så ny vad gäller programmering så ha överseende :).
Tack på förhand.

Min kod ser ut så här:

import java.util.Scanner; public class P33 { public static void main(String[] args){ Scanner rekna = new Scanner(System.in); int tal = 1; int total= 0; while(tal>0){ tal = rekna.nextInt(); for(int n=1;n>=10 ;n++){ tal = rekna.nextInt(); if(tal>0) { total = n++; } else if(tal<=0){ System.out.println("Antal imatade tal" +total); } } } } }

Tack på förhand

Nu är jag verkligen ingen Java-programmerare, men jag lyckades iaf få det här att kompilera lite snabbt och det verkar fungera. Tror det är lättare att helt enkelt visa hur det borde se ut, istället för att påpeka varje fel du gjort. Dock kan jag ju lite snabbt påpeka att din for-loop inte körs, då du sätter n till 1 och sedan bara kör loopen om n är mer än eller lika med 10.

import java.util.Scanner; public class P33 { public static void main(String[] args){ Scanner rekna = new Scanner(System.in); int tal = 0; int total = 0; tal = rekna.nextInt(); while(tal != 0){ total++; tal = rekna.nextInt(); } System.out.println("Antal imatade tal" +total); } }

Permalänk
Medlem

hhnrk: Det fungerade jättebra, tack så jättemycket för hjälpen!

Visa signatur

Dator #1: | Intel i5 4670K | 8 GB ram | GTX 770 2GB|Samsung 840 120 GB SSD|Samsung 850 EVO 250GB | ASUS Z87-A|
Dator #2: | Intel C2D E6750 | 2 GB ram | 8800GTS 640MB | 500GB HD | Gigabyte P35-DS4|