Trädvy Permalänk
Medlem
Registrerad
Apr 2016

EOF knapp i netbeans (Java)

Hej
I min bok där säger att man måste trycka på CTRL och Z för att göra EOF.
Men i min netbeans det fungerar inte. Händer ingenting!
Jag har testat det med exempel koden från min lärobok.

package Exempel_KAP9; import java.io.*; import java.text.*; import java.util.*; class Agent{ static final double gräns = 50000; static final double proc1 = 0.1; static final double proc2 =0.15; String namn; double summa; Agent(String n){ namn = n; } double arvode(){ if(summa<=gräns) return summa * proc1; else return gräns * proc1 + (summa-gräns)*proc2; } } public class Rapport { static Collator co = Collator.getInstance(); public static void main (String arg[]){ Agent []a = new Agent[100]; int antalAgenter = 0; co.setStrength(Collator.PRIMARY); Scanner sc = new Scanner(System.in); while(true){ System.out.print("Agent?");System.out.flush(); if(!sc.hasNext()) break; String nn = sc.nextLine(); System.out.print("Belopp?");System.out.flush(); double belopp = sc.nextDouble(); sc.nextLine(); int i; for(i=0; i<antalAgenter&&!co.equals(nn, a[i].namn);i++); if(i == antalAgenter){ a[i] = new Agent(nn); antalAgenter++; } a[i].summa+=belopp; } System.out.format("\n\n%30s%10s\n%30s%10s\n", "Belopp", "Arvode", "=====", "====="); for(int j =0; j<antalAgenter; j++) System.out.format("%-20s%, 10.0f%,10.0f\n" , a[j].namn, a[j].summa,a[j].arvode()); } }

Jag använder Netbeans 8.1 nu . Vilken knapp måste man trycka på ?

Trädvy Permalänk
Medlem
Registrerad
Apr 2016
Skrivet av ProgrammeringElev:

Hej
I min bok där säger att man måste trycka på CTRL och Z för att göra EOF.
Men i min netbeans det fungerar inte. Händer ingenting!
Jag har testat det med exempel koden från min lärobok.

package Exempel_KAP9; import java.io.*; import java.text.*; import java.util.*; class Agent{ static final double gräns = 50000; static final double proc1 = 0.1; static final double proc2 =0.15; String namn; double summa; Agent(String n){ namn = n; } double arvode(){ if(summa<=gräns) return summa * proc1; else return gräns * proc1 + (summa-gräns)*proc2; } } public class Rapport { static Collator co = Collator.getInstance(); public static void main (String arg[]){ Agent []a = new Agent[100]; int antalAgenter = 0; co.setStrength(Collator.PRIMARY); Scanner sc = new Scanner(System.in); while(true){ System.out.print("Agent?");System.out.flush(); if(!sc.hasNext()) break; String nn = sc.nextLine(); System.out.print("Belopp?");System.out.flush(); double belopp = sc.nextDouble(); sc.nextLine(); int i; for(i=0; i<antalAgenter&&!co.equals(nn, a[i].namn);i++); if(i == antalAgenter){ a[i] = new Agent(nn); antalAgenter++; } a[i].summa+=belopp; } System.out.format("\n\n%30s%10s\n%30s%10s\n", "Belopp", "Arvode", "=====", "====="); for(int j =0; j<antalAgenter; j++) System.out.format("%-20s%, 10.0f%,10.0f\n" , a[j].namn, a[j].summa,a[j].arvode()); } }

Jag använder Netbeans 8.1 nu . Vilken knapp måste man trycka på ?

Jag har provat med CtrL D men det fungerar inte också. Programmet slutas inte.

Trädvy Permalänk
Medlem
Plats
i din garderob
Registrerad
Sep 2007
Skrivet av ProgrammeringElev:

Jag har provat med CtrL D men det fungerar inte också. Programmet slutas inte.

Du behöver förmodligen köra programmet från konsolen för att det ska fungera, gissar på att Netbeans inte tar emot interrupt-signaler.

Bilanaloger är som Volvo — varenda svenne kör med dem

Trädvy Permalänk
Medlem
Registrerad
Apr 2016
Skrivet av Teknocide:

Du behöver förmodligen köra programmet från konsolen för att det ska fungera, gissar på att Netbeans inte tar emot interrupt-signaler.

Konsol? Menar du cmd eller??

Trädvy Permalänk
Medlem
Plats
i din garderob
Registrerad
Sep 2007
Skrivet av ProgrammeringElev:

Konsol? Menar du cmd eller??

Ja, det är ett vanligt alternativ i Windows. Fungerar förmodligen i powershell också

Bilanaloger är som Volvo — varenda svenne kör med dem

Trädvy Permalänk
Medlem
Registrerad
Apr 2016
Skrivet av Teknocide:

Ja, det är ett vanligt alternativ i Windows. Fungerar förmodligen i powershell också

Ok tack för inlägg!