16 svar
238 visningar
daylightkapt är nöjd med hjälpen
daylightkapt 18
Postad: 15 nov 2020 19:21

Hittar inte vad som är fel.

{
			class Program
			{
			public static void Main(string[] args)
			{
			var minbuss = new Buss();
			minbuss.Run();
			
			}
			}
			}

			class Buss
			{
			public int[] passenger = new int[25];
			public int total_passenger;

 

			public void Run()
			{
			int menu = 0;
			do
			{
			Console.WriteLine("-----------------------------------------------------");
			Console.WriteLine("Välkommen till min buss!");
			Console.WriteLine("Välj ett alternativ");
			Console.WriteLine("1. Lägg till en passagerare");
			Console.WriteLine("2. Kontrollera den totala ålder på passagerarna");
			Console.WriteLine("3. Räkna ut totalålder på passagerarna");
			Console.WriteLine("-----------------------------------------------------");
			menu = int.Parse(Console.ReadLine());
			switch (menu)
			{
			case 1:
			add_passenger();
			break;
			
			case 2:
			print_buss();
			break;
			
			case 3:
			calc_total_age();
			break;
			
			
			
			}
			} while (menu != 0);
			}
			
			public void add_passenger()
			{
			Console.WriteLine("Hur många passagerare vill du lägga till?");
			int size = Convert.ToInt32(Console.ReadLine());
			for (int i = 0; i < size; i++)
			{
			Console.WriteLine("Skriv åldern på den passagerare du vill lägga till ");
			int pass = Convert.ToInt32(Console.ReadLine());
			passenger[i] = pass; 
			}
			}
			
			
			public void print_buss()
			{
			Console.WriteLine("Åldern på passagerarna är ");			
			for (int i = 0; i < passenger.Length; i++)
			
			Console.WriteLine(passenger[i] + "gammal");
			}
			
			
			
			public int calc_total_age()
				
			{
			int sum = 0;
			for (int i = 0; i < passenger.Length; i++)
			{
			sum += passenger[i];
			
			
			int minage = 0;
			int maxAge = 0;
			maxAge = passenger[0];
			for (int i = 0; i < passenger.Length; i++)
			
			
			
			}
			}
			
Laguna Online 28524
Postad: 15 nov 2020 19:28

Hur är det fel? Får du kompileringsfel, eller går programmet att köra men gör inte som det ska? 

daylightkapt 18
Postad: 15 nov 2020 20:47

det saknas } står det

Laguna Online 28524
Postad: 15 nov 2020 20:50

Då gör det nog det. Vilken rad står det att det är fel på? 

daylightkapt 18
Postad: 15 nov 2020 21:25

3:dej från botten men lägger jag till där så får jag syntax fel istället

Laguna Online 28524
Postad: 16 nov 2020 08:09

Kan du posta koden igen, men indenterad så man ser strukturen?

Vad fick du för syntaxfel? Det är ju möjligt att du ändrade på rätt ställe, men att det finns fler fel.

daylightkapt 18
Postad: 16 nov 2020 10:32

Indenterat???

Aerius 504 – Fd. Medlem
Postad: 16 nov 2020 10:36 Redigerad: 16 nov 2020 10:37

sista for-loopen saknar både "{" och "}" vad jag kan se. indentera betyder flytta in raden på papperet. Så det blir ett tomrum mellan papperets kant och radens första bokstav, kan även kallas marginal.

Lindehaven 820 – Lärare
Postad: 16 nov 2020 10:44

Sista for-loopen använder även den lokala variabeln i som redan deklarerats i näst sista for-loopen (error CS0136).

daylightkapt 18
Postad: 17 nov 2020 15:06 Redigerad: 17 nov 2020 17:39
{
			class Program
			{
			public static void Main(string[] args)
			{
			var minbuss = new Buss();
			minbuss.Run();
			
			}
			}
			}

			class Buss
			{
			public int[] passenger = new int[25];
			public int total_passenger;

 

			public void Run()
			{
			int menu = 0;
			do
			{
			Console.WriteLine("-----------------------------------------------------");
			Console.WriteLine("Välkommen till min buss!");
			Console.WriteLine("Välj ett alternativ!");
			Console.WriteLine("1. Lägg till passagerare mellan 1 och 25st.");
			Console.WriteLine("2. Kontrollera den totala ålder på passagerarna.");
			Console.WriteLine("3. Räkna ut totalålder på passagerarna.");
			Console.WriteLine("0. Avsluta programmet!");
			Console.WriteLine("-----------------------------------------------------");
			menu = int.Parse(Console.ReadLine());
			switch (menu)
			{
			case 1:
			add_passenger();
			break;
			
			case 2:
			print_buss();
			break;
			
			//case 3:
			//calc_total_age();
			//break;
			
			case 0: Console.WriteLine("Programmet avslutas");
			break;
			
			default: Console.WriteLine("Felaktig inmatning Försök igen!");
			break;
			
			
			}
			} while (menu != 0);
			}
			
			public void add_passenger()
			{
			Console.WriteLine("Hur många passagerare vill du lägga till?");
			int size = Convert.ToInt32(Console.ReadLine());
			for (int i = 0; i < size; i++)
			{
			Console.WriteLine("Skriv åldern på den passagerare du vill lägga till ");
			int pass = Convert.ToInt32(Console.ReadLine());
			passenger[i] = pass; 
			}
			}
			
			
			public void print_buss()
			{
			Console.WriteLine("Åldern på passagerarna är ");			
			for (int i = 0; i < passenger.Length; i++)
			
			Console.WriteLine(passenger[i] + "år gammal");
			}
			
			
			
			public int calc_total_age()
				
			{
			int sum = 0;
			for (int i = 0; i < passenger.Length; i++)
			{
			
			sum = passenger[i];
			
			
			
			
			}
			}
			}
			
			
Lindehaven 820 – Lärare
Postad: 17 nov 2020 15:36

daylightkapt, vad är din fråga? Det finns kvar fel i koden. Kompilatorn hittar dem åt dig.

Använd Infoga programmeringskod (knappen {;} i menyn) och skriv din kod med indentering som Laguna föreslog och som Aerius förklarade. Exempel:

    public void add_passenger()
    {
        Console.WriteLine("Hur många passagerare vill du lägga till?");
        int size = Convert.ToInt32(Console.ReadLine());
        for (int i = 0; i < size; i++)
        {
            Console.WriteLine("Skriv åldern på den passagerare du vill lägga till ");
            int pass = Convert.ToInt32(Console.ReadLine());
            passenger[i] = pass;
        }
    }
daylightkapt 18
Postad: 17 nov 2020 17:39 Redigerad: 17 nov 2020 17:57

Jag får allt utom "public int calc_total_age()" att fungera

Får felkod "Buss.calc_total_age(): alla kodsökvägar returnerar inte ett värde (CS0161)"

Lindehaven 820 – Lärare
Postad: 17 nov 2020 18:01

Det hjälper om du skriver vad som inte fungerar. Men det är uppenbart att metoden calc_total_age() inte returnerar något heltal.

Aerius 504 – Fd. Medlem
Postad: 17 nov 2020 19:58
daylightkapt skrev:

Jag får allt utom "public int calc_total_age()" att fungera

Får felkod "Buss.calc_total_age(): alla kodsökvägar returnerar inte ett värde (CS0161)"

Buss.calc_total_age() saknar return statement

daylightkapt 18
Postad: 17 nov 2020 21:11 Redigerad: 17 nov 2020 21:14

Hur får jag ett mellanrum mellan texten och siffrorna??

 

("Totala ålder på passagerarna är" + sum);

Laguna Online 28524
Postad: 17 nov 2020 21:15

Du räknar ut ett medelvärde. Är det det funktionen ska göra? 

daylightkapt 18
Postad: 17 nov 2020 21:18

Har fått till det

Svara Avbryt
Close