Moi!
Tarvitsisin apua harjoitustehtävän tekemiseen, jossa on luotava ohjelma, joka kysyy kaksi lukua ja laskee ne yhteen.
Tuloksen tulostamiseen on luotava itse metodi.
Miten voin korjata koodia:
import java.util.*;
public class tulostusmetodi
{
public static int summa (int luku1, int luku2)
{
int sum;
sum = luku1 luku2;
return sum; /* palautetaan sum-muuttujan arvo kutsujalle*/
}
public static void main(String[] args)
{
int luku1;
int luku2;
int sum;
int x;
int y;
int z;
Scanner sc = new Scanner(System.in);
System.out.println("Anna luku1: ");
luku1 = sc.nextInt();
System.out.println("Anna luku2: ");
luku2 = sc.nextInt();
z = summa (x,y);
System.out.println(z);
}
}
Tarvitsisin apua harjoitustehtävän tekemiseen, jossa on luotava ohjelma, joka kysyy kaksi lukua ja laskee ne yhteen.
Tuloksen tulostamiseen on luotava itse metodi.
Miten voin korjata koodia:
import java.util.*;
public class tulostusmetodi
{
public static int summa (int luku1, int luku2)
{
int sum;
sum = luku1 luku2;
return sum; /* palautetaan sum-muuttujan arvo kutsujalle*/
}
public static void main(String[] args)
{
int luku1;
int luku2;
int sum;
int x;
int y;
int z;
Scanner sc = new Scanner(System.in);
System.out.println("Anna luku1: ");
luku1 = sc.nextInt();
System.out.println("Anna luku2: ");
luku2 = sc.nextInt();
z = summa (x,y);
System.out.println(z);
}
}
Vastaukset 6
Vanhimmat
Korjaat kaikki virheet joita kääntäjä ilmoittaa, (eli se ilmoittaa ettei muuttujia x ja y ole alustettu). Liäksi kannattaa ottaa kaikki turhat muuttujat pois.
--- ALKAA ---
import java.util.Scanner;
public class tulostusmetodi
{
public static int summa(int luku1, int luku2)
{
return luku1 luku2;
}
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.print("Anna luku1: ");
int luku1 = sc.nextInt();
System.out.print("Anna luku2: ");
int luku2 = sc.nextInt();
System.out.println("Summa: " summa(luku1, luku2));
}
}
--- LOPPUU ---
Jos et haluat tehdä muuta kuin pakolliset toimenpiteet, niin ohjelman saa toimimaan kun korvaat rivin " z = summa (x,y);", rivillä " z = summa (luku1,luku2);".
Alla viellä esimerkki jossa tulostamisen tulostamiseen on luotu oma metodi.
---- ALKAA ----
import java.util.Scanner;
public class tulostusmetodi
{
public static int summa(int luku1, int luku2)
{
return luku1 luku2;
}
public static void tulostaVastaus(int vastaus)
{
System.out.println("Summa: " vastaus);
}
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.print("Anna luku1: ");
int luku1 = sc.nextInt();
System.out.print("Anna luku2: ");
int luku2 = sc.nextInt();
tulostaVastaus(summa(luku1, luku2));
}
}
---- LOPPUU ----
Moi!
Kiitoksia avusta! Itse en olisi millään keksinyt oikeaa ratkaisua
Piti sanoa tuloksen tulostamiseen...
Luokan nimi kannattaa muuten muuttaa joksikin muuksi kuin "tulostusmetodi" nimiseksi, esimerkiksi "YhteenlaskuOhjelma" on paljon kuvaavampi nimi kyseiselle luokalle. "summa" ja "main" ovat tuossa ohjelmassasi metodien nimiä, kun taas "tulostusmetodi" on luokan nimi (eli ei siis kovin kuvaava nimi luokalle).