2 svar
514 visningar
Mhayia är nöjd med hjälpen
Mhayia 6
Postad: 25 apr 2022 14:56

Använda modulo för att se vilka tal som är delbara med 3 och 7.

Hej!

 

Jag har en uppgift där jag ska skriva en for-loop. Jag ska först mata in ett valfritt positivt heltal, och programmet ska sedan skriva ut samtliga tal som är jämnt delbara med BÅDE 3 och 7. Tex från 1-21 så finns det bara ETT tal som är jämnt delbart med 3 och 7, alltså nummer 21. 

För att:

21%3=0
21%7=0

Jag vet ju tekniskt sett VAD jag vill göra, men jag stöter på ett problem när jag vill skriva ut sista meddelandet. Om jag tex skriver 100 (jag vill alltså att konsolen skriver ut alla tal som är jämnt delbara med 3 och 7 mellan tal 1-100), så stöter jag på problemet när jag når tal 84. 84 är det sista talet i denna loop som är jämnt delbart med 3 och 7, och d är tanken att konsolen ska sluta skriva. Men istället hoppar den vidare till nästa else if och skriver ut "Hittade inga tal...", vilket då såklart inte stämmer, men den gör denna slutsatsen eftersom 85-100 inte är jämnt delbart med 3 och 7. 

 

Skulle uppskatta hjälp, jag har suttit alldeles för länge med det här idag. 

 

Bild på min nuvarande kodning, konsolen och uppgiften - >
https://gyazo.com/bf5ebe4b27a27928beb1d5d543165915 

 

Kodningen: 

Console.Write("Ange ett positivt heltal: ");
int tal = int.Parse(Console.ReadLine());


for(int i = 1; i <= tal; i++)
{

if ((i % 3 == 0) && (i % 7 == 0))
{
Console.WriteLine(i + " är delbart med 3 och 7.");
}
else if((i == tal) && (i % 3 != 0 && i % 7 != 0))
{
Console.WriteLine("Hittade inga tal...");
}

}

Laguna Online 28597
Postad: 25 apr 2022 15:07 Redigerad: 25 apr 2022 15:07

Programmet kommer ju inte ihåg vilka tal som det hittade. Jag föreslår att du inför en variabel som räknar hur många du hittade. Utanför loopen kan du skriva ut "hittade inga tal" ifall den variabeln fortfarande är 0.

Mhayia 6
Postad: 25 apr 2022 15:11

TUSEN tack Laguna! 

Det löste problemet, och kändes så oerhört logiskt när man väl fattade vad man gjorde fel. Guldstjärna till dig!

Lösning:

https://gyazo.com/ef2d188d6728c715387896093a56cf96

Svara Avbryt
Close