9 svar
897 visningar
lagamba 132
Postad: 18 feb 2023 10:55

Python Pensionär beräkning

Jag har fastnat..har endast läst C# sedan kursen började nyligen och jag har utfört uppgiften om att räkna ut hur många år det är kvar till pensionen korrekt.

{
public static void Main(string[] args)
{

//Hämtar användarnamnet
Console.WriteLine("Vad heter du?");
String name = Console.ReadLine();

//Hämtar användarålder
Console.WriteLine("Hur gammal är du?");
string input = Console.ReadLine();
int age = int.Parse(input);
int dinålder = age;
int pension = 65 - dinålder;

//Skriv ut informationen
Console.WriteLine("Hej " + name + "! du har " + pension + " år kvar till din pension.");

//Vänta in användaren
Console.ReadLine();
}
}

 

MEN nu ska man även göra den i Python vilket jag inte har någon kunskap i. Har kollat på olika youtubeklipp, läst grunderna osv. men vilka steg jag än följer blir det fel. Har nolställt allt nu till denna kod.

 

#be användaren uppge namn
print("Skriv in ditt förnamn.")
namn = input()

#be användaren uppge ålder
print("Skriv in din ålder.")
age = input()

#skriv ut användarinformation
print("Hej " + namn + " om " + age + " är du pensionär.")

#hållkod
input()

lagamba 132
Postad: 18 feb 2023 10:57

Har testat följande

print("Skriv in din ålder.")
age = input()

pension = 65
print(65-age)


 

print("Skriv in din ålder.")
age = int(input())

pension = 65

print(65-age(int(input())


 

Vad gör jag för fel?

lagamba 132
Postad: 18 feb 2023 11:00

Kan någon hjälpa mig att förstå vart felet ligger? Eller tipsa om någon sida som beskriver bättre? Har kollat på nätet men har svårt att hitta rätt för tydligen blir det fel även när jag följer guider, som även visar olika.

Laguna Online 30472
Postad: 18 feb 2023 11:05

Vad blir det för fel?

lagamba 132
Postad: 18 feb 2023 11:08

den räknar inte ut 65-age

Age funkar inte, den har inget värde

Har ingen lärobok i python eftersom jag valt c# som språk så jag är inte så insatt 

Laguna Online 30472
Postad: 18 feb 2023 11:19

När du använder input() får du en sträng, inte ett tal. En sträng som innehåller ett tal gör du om till ett tal med funktionen int(), som du har använt på vissa ställen.

Gör ett nytt försök och visa hur det går, med faktisk text från felmeddelanden, om det blir några.

lagamba 132
Postad: 18 feb 2023 11:30

Jag har testat det också

skrev då såhär

age = int(input())

pension = 65
print(65-int(input()))

 

Får inget felmeddelande i detta fall och inte heller någon uträkning av 65-age

Laguna Online 30472
Postad: 18 feb 2023 11:34

Gör som i C#: age är värdet du vill använda, så du ska inte läsa in någonting mer.

lagamba 132
Postad: 18 feb 2023 20:33 Redigerad: 18 feb 2023 21:26

Har testat alla möjliga sätt

age = int(input())

pension = 65
print(65-int(input))


int age = int(input())

pension = 65
print(65-int(input))


age = int(input())

pension = 65
print(65-age)

 

lagamba 132
Postad: 18 feb 2023 20:42 Redigerad: 18 feb 2023 21:27

Löst!

Tog bort allt, började från början och ändrade ingenting..utan la till age = int(age) och det löste problemet

Svara
Close