metod returnera två tal
Hej!
Jag sitter och övar lite på grundläggande programmering och har fastnat på en grej. Jag vill göra en metod som mottar 2 tal, som sedan räknar ihop detta, och returnerar det till mig. Har kommit såhär långt, MEN summan av talen returneras inte, någon som skulle kunna förklara vad som är fel?
tacksam för all hjälp!
static void Main(string[] args)
{
int val1 = int.Parse(Console.ReadLine());
int val2 = int.Parse(Console.ReadLine());
int summa = Summa(val1,val2);
Console.WriteLine("Summa");
}
public static int Summa(int tal1, int tal2)
{
int metod_summa = tal1 + tal2;
return metod_summa;
}
}
}
Du printar bara ut strängen "Summa"
Du måste printa ut variabeln summa.
beerger skrev:Du printar bara ut strängen "Summa"
Du måste printa ut variabeln summa.
Alright! Hur vet jag vilken som är vilken?
Vad menar du? Vad som är sträng och vad som är variabeln?
beerger skrev:Vad menar du? Vad som är sträng och vad som är variabeln?
Ja precis, båda heter ju samma sak haha
En sträng omges av "".
Den andra gör inte det.
Allt inom citattecken är en sträng, helt enkelt text.
Du ska inte retunera "summa". Det betyder som beerger sagt ovan att du vill printa strängen "summa". Du vill ju istället printa variabeln summa.
Sedan så behöver du inte int metod_summa, du kan ta bort den biten och istället skriva:
return tal1+tal2;
Du behöver alltså inte skapa en lokal variabel och retunera den utan kan direkt retunera resultatet.
beerger skrev:En sträng omges av "".
Den andra gör inte det.
Allt inom citattecken är en sträng, helt enkelt text.
inga av summorna har citattäcken ju?
Dracaena skrev:Du ska inte retunera "summa". Det betyder som beerger sagt ovan att du vill printa strängen "summa". Du vill ju istället printa variabeln summa.
Sedan så behöver du inte int metod_summa, du kan ta bort den biten och istället skriva:
return tal1+tal2;
Du behöver alltså inte skapa en lokal variabel och retunera den utan kan direkt retunera resultatet.
Gjorde som du sa, kod nedan, men det är fortfarande samma sak?
using System;
namespace metoder
{
class Program
{
static void Main(string[] args)
{
int val1 = int.Parse(Console.ReadLine());
int val2 = int.Parse(Console.ReadLine());
int summa = Summa(val1,val2);
Console.WriteLine("summan är ");
}
public static int Summa(int tal1, int tal2)
{
return tal1 + tal2;
}
}
}
En funktion som returnerar något kommer bara returnera värdet till variabeln. Det printar inte ut något i konsolen..
Du måste skriva in variabeln summa i Console.WriteLine(); om du vill se resultatet.
beerger skrev:En funktion som returnerar något kommer bara returnera värdet till variabeln. Det printar inte ut något i konsolen..
Du måste skriva in variabeln summa i Console.WriteLine(); om du vill se resultatet.
TUSEN tack!! nu förstod jag hur du mena!!