Tags
Forum
Artikler
Brugere
Stil spørgsmål
1
online
Login
Husk mig
hjælp til en lille java opgave
Tags:
java
Bruger #12870
@ 25.05.08 14:27
0
Jeg er igang med en opgave men kan ikke lave det.
Sådan lyder opgaven:
* Udvid programmet med en konstruktør,
* således at objektet kan tælle med en trinstørrelse der
* difineres ved fødslen af objektet.
Sådan ser programmet ud:
class runde {
private int klar, nedre, øvre;
public runde()
{
klar = 0;
}
public runde(int a)
{
nedre = 0;
øvre = a;
klar = 1;
}
public runde(int a, int b)
{
nedre = a;
øvre = b;
klar = 1;
}
public void gørdet()
{
if (klar != 0)
for(int i = nedre; i <= øvre; i++)
System.out.println(i);
}
}
public class interval1 {
public static void main(String[] args)
{
runde a = new runde(3);
runde b = new runde(5, 9);
a.gørdet();
b.gørdet();
}
}
Bruger #4996
@ 25.05.08 18:06
196
Du kan tilføje en increment variabel til din class:
private int klar, nedre, øvre, inc;
Og lave en ny constructor:
public runde(int a, int b, int _inc)
{
nedre = a;
øvre = b;
inc = _inc;
klar = 1;
}
Og udvide gørdet funktionen til at tælle op med din incremet:
public void gørdet()
{
if (klar != 0)
for(int i = nedre; i <= øvre; i += inc)
System.out.println(i);
}
Husk at sætte inc i de andre constructorer!
Så kan du bruge:
runde c = new runde(2, 12, 2);
Der så vil tælle 2, 4, 6, 8, 10, 12
Bruger #12870
@ 25.05.08 23:29
0
jeg har tilføjet inc, men det har faktisk ikke hjulpet.
Programmet kører og stopper ikke, og den kun viser 0
Bruger #4996
@ 25.05.08 23:37
196
Jeg tror du skal poste hele koden, så jeg kan se hvad der går galt.
Bruger #12870
@ 25.05.08 23:52
0
class runde1
{
private int klar, nedre, øvre, inc;
public runde1()
{
klar = 0;
}
public runde1(int a)
{
nedre = 0;
øvre = a;
klar = 1;
}
public runde1(int a, int b)
{
nedre = a;
øvre = b;
klar = 1;
}
public runde1(int a, int b, int _inc)
{
nedre = a;
øvre = b;
inc = _inc;
klar = 1;
}
public void gørdet()
{
if (klar != 0)
for(int i = nedre; i <= øvre; i += inc)
System.out.println(i);
}
}
public class Opgave_3_3_1
{
public static void main(String[] args)
{
runde1 a = new runde1(3);
runde1 b = new runde1(5, 9);
runde1 c = new runde1(2, 12, 2);
a.gørdet();
b.gørdet();
c.gørdet();
}
}
Men som jeg har forstået opgaven skulle man måske oprette en constructor til og tilføjer en forloop i selve constructoren.
Bruger #4996
@ 25.05.08 23:57
196
Som jeg skrev:
Husk at sætte inc i de andre constructorer!
Dvs. du skal sætte inc til 1 i de andre constructorer.
Bruger #4996
@ 25.05.08 23:58
196
Jeg læser opgaven som at du skal lave programmet på den måde du har lavet det.
Det giver i mine øjne ikke så meget mening at lave for loopen i constructoren, men jeg er heller ikke lærer.
Bruger #12870
@ 26.05.08 00:09
0
Nu virker den. Mange tak for hjælpen
Karma barometer (30 dage)
Modtaget
Givet
X
Favorit hos
Forum tråde
Artikler
Tilføj til dine favorit tags
Fjern fra dine favorit tags