Vinnaren i pepparkakshustävlingen!
2022-04-09, 20:43
  #1
Medlem
Bonnatorps avatar
Har en uppgift med fljande kod:

Kod:
using System;

namespace Fordon_Lastbil
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Fordon volvo = new Fordon(90, "grn");
            Lastbil scania = new Lastbil(400, "vit", 3000);
			Run();
        }
        static void Run()
        {
			int temp = 0;
			do
			{
				Console.Clear();
				Console.WriteLine("Vlkommen till fordonssimulatorn.");
				Console.WriteLine("Vlj fordon:");
				Console.WriteLine("1 Volvo - bil");
				Console.WriteLine("2 Scania - lastbil");
				Console.Write("\nDitt val: ");
				try
				{
					temp = int.Parse(Console.ReadLine());
				}
				catch (Exception)
				{
					Console.WriteLine("Var god vlj en siffra bland menyalternativen.\n" +
						"Tryck vilken knappt som helst fr att terg till menyn.");
					Console.ReadKey(true);
                    Run();
				}

				switch (temp)
				{
					case 1:

						Volvo();
						break;
					case 2:
						Scania();
						break;
					case 0:
						Console.WriteLine("Programmet avslutas.");
						break;
					default:
						Console.WriteLine("Felaktig inmatning.");
                        Console.ReadKey();
						break;
				}
			} while (temp != 0);
		}
        static void Volvo()
        {
			int horsepower=0;
			string color = "vit";
			Console.WriteLine("Hur mnga hstkrafter har bilen?");
			horsepower = int.Parse(Console.ReadLine());
			Console.WriteLine("Vilken frg r bilen?");
			color = Console.ReadLine();
			Fordon volvo = new Fordon(horsepower, color);
			int temp = 0;
			do
			{
				Console.Clear();
				Console.WriteLine("Vad ska bilen gra?.");
				Console.WriteLine("Vlj alternativ:");
				Console.WriteLine("1 Kra");
				Console.WriteLine("2 Tuta");
                Console.WriteLine("3 Huvudmeny");
				Console.Write("\nDitt val: ");
				try
				{
					temp = int.Parse(Console.ReadLine());
				}
				catch (Exception)
				{
					Console.WriteLine("Var god vlj en siffra bland menyalternativen.\n" +
						"Tryck vilken knappt som helst fr att terg till menyn.");
					Console.ReadKey(true);
					Volvo();
				}

				switch (temp)
				{
					case 1:
                        Console.WriteLine("Den {0}a Volvon kr i {1} km/h", color, volvo.Calc_Topspeed(horsepower)); ;
						Console.ReadKey();
						break;
					case 2:
						volvo.Horn();
						Console.ReadKey();
						break;
					case 3:
						Run();
						break;
					case 0:
						Console.WriteLine("Programmet avslutas.");
						break;
					default:
						Console.WriteLine("Felaktig inmatning.");
						Console.ReadKey();
						break;
				}
			} while (temp != 0);
		}
        static void Scania()
        {
			int horsepower = 0;
			string color = "vit";
			int last = 0;
			Console.WriteLine("Hur mnga hstkrafter har fordonet?");
			horsepower = int.Parse(Console.ReadLine());
			Console.WriteLine("Vilken frg r fordonet?");
			color = Console.ReadLine();
			Console.WriteLine("Hur mnga kilo r lastat p fordonet?");
			last = int.Parse(Console.ReadLine());
			Lastbil scania = new Lastbil(horsepower, color, last);
			int temp = 0;
			do
			{
				Console.Clear();
				Console.WriteLine("Vad ska lastbilen gra?.");
				Console.WriteLine("Vlj alternativ:");
				Console.WriteLine("1 Kra");
				Console.WriteLine("2 Tuta");
				Console.WriteLine("3 Huvudmeny");
				Console.Write("\nDitt val: ");
				try
				{
					temp = int.Parse(Console.ReadLine());
				}
				catch (Exception)
				{
					Console.WriteLine("Var god vlj en siffra bland menyalternativen.\n" +
						"Tryck vilken knappt som helst fr att terg till menyn.");
					Console.ReadKey(true);
					Scania();
				}

				switch (temp)
				{
					case 1:
						Console.WriteLine("Den {0}a Scanian kr i {1} km/h", color, scania.Calc_Topspeed(horsepower, last)); ;
						Console.ReadKey();
						break;
					case 2:
						scania.Horn();
						Console.ReadKey();
						break;
					case 3:
						Run();
						break;
					case 0:
						Console.WriteLine("Programmet avslutas.");
						break;
					default:
						Console.WriteLine("Felaktig inmatning.");
						Console.ReadKey();
						break;
				}
			} while (temp != 0);
		}
    }
    class Fordon
    {
        protected int horsepower;
        protected string color;

        public Fordon (int horsepower, string color)
        {
            this.horsepower = horsepower;
            this.color = color;
        }
        public virtual double Calc_Topspeed(int horsepower)
        {
            return horsepower * 1.5;
        }
        public void Horn()
        {
            Console.WriteLine("Du tutar.");
        }
    }
    class Lastbil : Fordon
    {
        private int last; //kilogram last
        public Lastbil(int horsepower, string color, int last) : base(horsepower, color)
        {
			this.last = last;
            this.horsepower = horsepower;
            this.color = color;
        }
        public override double Calc_Topspeed(horsepower, last)
        {
            return (horsepower * 1.5)/(last/7000);
        }
    }
}

Problemet r att functionen scania.Calc_Topspeed(horsepower, last) (halvnra slutet) inte vill kras, p grund av felmeddelandet p villkoren att "Cannot convert int to horsepower/last".

Och jag antog att det skulle g plocka variablerna frn metoden Scania() i klassen Run(), och anvnda som villkor i den metoden.
Men det verkar inte g, fastn samma funktion gr bra i metoden Volvo(), fast fr klassen Fordon istllet fr den Lastbil : Fordon.

Ngra ider?
Citera
2022-04-09, 20:54
  #2
Medlem
Citat:
Ursprungligen postat av Bonnatorp
Har en uppgift med fljande kod:


Problemet r att functionen scania.Calc_Topspeed(horsepower, last) (halvnra slutet) inte vill kras, p grund av felmeddelandet p villkoren att "Cannot convert int to horsepower/last".

Och jag antog att det skulle g plocka variablerna frn metoden Scania() i klassen Run(), och anvnda som villkor i den metoden.
Men det verkar inte g, fastn samma funktion gr bra i metoden Volvo(), fast fr klassen Fordon istllet fr den Lastbil : Fordon.

Ngra ider?

Gr du ngon utrkning som gr att du fr ett decimaltal och frsker spara det i en int?
Citera
2022-04-09, 20:56
  #3
Medlem
Citat:
Ursprungligen postat av 1psykfall
Gr du ngon utrkning som gr att du fr ett decimaltal och frsker spara det i en int?

sg nu att det antaligen inte var felet.
Citera
2022-04-09, 20:59
  #4
Medlem
Bonnatorps avatar
Citat:
Ursprungligen postat av 1psykfall
Gr du ngon utrkning som gr att du fr ett decimaltal och frsker spara det i en int?
Nej utrkningen av Calc_Topspeed r bara en kort return (horsepower * 1.5)/(last/7000);.
Returen r en double, men det antog jag inte skulle vara ngot problem eftersom en input i funktionen ska kunna vara en int nd.

Jag upptckte dock problemet nu, jag hade inte satt villkoren till int, respektive string (fr hstkrafter respektive frg) i funktionen i sig.

Dock har jag ett nytt problem.
Funktionen krs helt ofrklarligt inte. Programmet tergr till menyn trots att det till och med r satt en Console.ReadKey(); efter stycket dr funktionen ska returnera en hastighet.

Bde klassen Fordon och klassen Lastbil innehller samma funktion, fast med olika innehll (lastbilens metod innehller variabeln last, s tv villkor istllet fr ett), s jag antog att jag skulle anvnda override dr, men det gick inte heller d jag d fr ett felmeddelande p metodnamnet som sger "no suitable method found to override".
Beror det p att de har olika antal villkor och rknas som olika metoder?
__________________
Senast redigerad av Bonnatorp 2022-04-09 kl. 21:02.
Citera
2022-04-09, 21:03
  #5
Medlem
Enterprises avatar
Citat:
Ursprungligen postat av Bonnatorp
Nej utrkningen av Calc_Topspeed r bara en kort return (horsepower * 1.5)/(last/7000);.
Returen r en double, men det antog jag inte skulle vara ngot problem eftersom en input i funktionen ska kunna vara en int nd.

Jag upptckte dock problemet nu, jag hade inte satt villkoren till int, respektive string (fr hstkrafter respektive frg) i funktionen i sig.

Dock har jag ett nytt problem.
Funktionen krs helt ofrklarligt inte. Programmet tergr till menyn trots att det till och med r satt en Console.ReadKey(); efter stycket dr funktionen ska returnera en hastighet.
Bra Bonnatorp, nu har du kommit s lngt p din utvecklarresa att du fr brja med debugging och brja gra breakpoints och kra koden rad fr rad med olika watches fr att se vad som hnder. Ett nytt kapitel.
Citera
2022-04-09, 21:06
  #6
Medlem
Citat:
Ursprungligen postat av Bonnatorp
Nej utrkningen av Calc_Topspeed r bara en kort return (horsepower * 1.5)/(last/7000);.
Returen r en double, men det antog jag inte skulle vara ngot problem eftersom en input i funktionen ska kunna vara en int nd.

Jag upptckte dock problemet nu, jag hade inte satt villkoren till int, respektive string (fr hstkrafter respektive frg) i funktionen i sig.

Dock har jag ett nytt problem.
Funktionen krs helt ofrklarligt inte. Programmet tergr till menyn trots att det till och med r satt en Console.ReadKey(); efter stycket dr funktionen ska returnera en hastighet.

Bde klassen Fordon och klassen Lastbil innehller samma funktion, fast med olika innehll (lastbilens metod innehller variabeln last, s tv villkor istllet fr ett), s jag antog att jag skulle anvnda override dr, men det gick inte heller d jag d fr ett felmeddelande p metodnamnet som sger "no suitable method found to override".
Beror det p att de har olika antal villkor och rknas som olika metoder?

Kod:
class Lastbil : Fordon
    {
        private int last; //kilogram last
        public Lastbil(int horsepower, string color, int last) : base(horsepower, color)
        {
			this.last = last;
            this.horsepower = horsepower;
            this.color = color;
        }
        public override double Calc_Topspeed(horsepower, last)
        {
            return (horsepower * 1.5)/(last/7000);
        }
    }

Jag gissar att detta r typ c++ eller ngot liknande sprk? Men det jag tnker hr, behver du inte referera this.horsepower till en instance variabel? Eller "fr" du med dig den frn "fordon"? Sorry, jag kanske frvirrar mer n att hjlpa just nu...
Citera
2022-04-09, 21:13
  #7
Medlem
Bonnatorps avatar
Citat:
Ursprungligen postat av Enterprise
Bra Bonnatorp, nu har du kommit s lngt p din utvecklarresa att du fr brja med debugging och brja gra breakpoints och kra koden rad fr rad med olika watches fr att se vad som hnder. Ett nytt kapitel.
Ja min gode mentor visade mig det vara hromdagen.
Otroligt anvndbart (och rtt s grisigt att studieguiden inte tagit upp det), men lite slitsamt ibland.
Citat:
Ursprungligen postat av 1psykfall
Kod:
class Lastbil : Fordon
    {
        private int last; //kilogram last
        public Lastbil(int horsepower, string color, int last) : base(horsepower, color)
        {
			this.last = last;
            this.horsepower = horsepower;
            this.color = color;
        }
        public override double Calc_Topspeed(horsepower, last)
        {
            return (horsepower * 1.5)/(last/7000);
        }
    }

Jag gissar att detta r typ c++ eller ngot liknande sprk? Men det jag tnker hr, behver du inte referera this.horsepower till en instance variabel? Eller "fr" du med dig den frn "fordon"? Sorry, jag kanske frvirrar mer n att hjlpa just nu...
Nej C#.

Ja den rver frn fordon.
Citera
2022-04-09, 21:41
  #8
Medlem
DurrHurrs avatar
Kod:
using System;

namespace Fordon_Lastbil
{
	internal class Program
	{
		static void Main(string[] args)
		{
			Fordon volvo = new Fordon(90, "grn");
			Lastbil scania = new Lastbil(400, "vit", 3000);
			Run();
		}
		static void Run()
		{
			int temp = 0;
			do
			{
				Console.Clear();
				Console.WriteLine("Vlkommen till fordonssimulatorn.");
				Console.WriteLine("Vlj fordon:");
				Console.WriteLine("1 Volvo - bil");
				Console.WriteLine("2 Scania - lastbil");
				Console.Write("\nDitt val: ");
				try
				{
					temp = int.Parse(Console.ReadLine());
				}
				catch (Exception)
				{
					Console.WriteLine("Var god vlj en siffra bland menyalternativen.\n" +
						"Tryck vilken knappt som helst fr att terg till menyn.");
					Console.ReadKey(true);
					Run();
				}

				switch (temp)
				{
					case 1:

						Volvo();
						break;
					case 2:
						Scania();
						break;
					case 0:
						Console.WriteLine("Programmet avslutas.");
						break;
					default:
						Console.WriteLine("Felaktig inmatning.");
						Console.ReadKey();
						break;
				}
			} while (temp != 0);
		}
		static void Volvo()
		{
			int horsepower = 0;
			string color = "vit";
			Console.WriteLine("Hur mnga hstkrafter har bilen?");
			horsepower = int.Parse(Console.ReadLine());
			Console.WriteLine("Vilken frg r bilen?");
			color = Console.ReadLine();
			Fordon volvo = new Fordon(horsepower, color);
			int temp = 0;
			do
			{
				Console.Clear();
				Console.WriteLine("Vad ska bilen gra?.");
				Console.WriteLine("Vlj alternativ:");
				Console.WriteLine("1 Kra");
				Console.WriteLine("2 Tuta");
				Console.WriteLine("3 Huvudmeny");
				Console.Write("\nDitt val: ");
				try
				{
					temp = int.Parse(Console.ReadLine());
				}
				catch (Exception)
				{
					Console.WriteLine("Var god vlj en siffra bland menyalternativen.\n" +
						"Tryck vilken knappt som helst fr att terg till menyn.");
					Console.ReadKey(true);
					Volvo();
				}

				switch (temp)
				{
					case 1:
						Console.WriteLine("Den {0}a Volvon kr i {1} km/h", color, volvo.Calc_Topspeed(horsepower)); ;
						Console.ReadKey();
						break;
					case 2:
						volvo.Horn();
						Console.ReadKey();
						break;
					case 3:
						Run();
						break;
					case 0:
						Console.WriteLine("Programmet avslutas.");
						break;
					default:
						Console.WriteLine("Felaktig inmatning.");
						Console.ReadKey();
						break;
				}
			} while (temp != 0);
		}
		static void Scania()
		{
			int horsepower = 0;
			string color = "vit";
			int last = 0;
			Console.WriteLine("Hur mnga hstkrafter har fordonet?");
			horsepower = int.Parse(Console.ReadLine());
			Console.WriteLine("Vilken frg r fordonet?");
			color = Console.ReadLine();
			Console.WriteLine("Hur mnga kilo r lastat p fordonet?");
			last = int.Parse(Console.ReadLine());
			Lastbil scania = new Lastbil(horsepower, color, last);
			int temp = 0;
			do
			{
				Console.Clear();
				Console.WriteLine("Vad ska lastbilen gra?.");
				Console.WriteLine("Vlj alternativ:");
				Console.WriteLine("1 Kra");
				Console.WriteLine("2 Tuta");
				Console.WriteLine("3 Huvudmeny");
				Console.Write("\nDitt val: ");
				try
				{
					temp = int.Parse(Console.ReadLine());
				}
				catch (Exception)
				{
					Console.WriteLine("Var god vlj en siffra bland menyalternativen.\n" +
						"Tryck vilken knappt som helst fr att terg till menyn.");
					Console.ReadKey(true);
					Scania();
				}

				switch (temp)
				{
					case 1:
						Console.WriteLine("Den {0}a Scanian kr i {1} km/h", color, scania.Calc_Topspeed(horsepower, last)); ;
						Console.ReadKey();
						break;
					case 2:
						scania.Horn();
						Console.ReadKey();
						break;
					case 3:
						Run();
						break;
					case 0:
						Console.WriteLine("Programmet avslutas.");
						break;
					default:
						Console.WriteLine("Felaktig inmatning.");
						Console.ReadKey();
						break;
				}
			} while (temp != 0);
		}
	}
	class Fordon
	{
		protected int horsepower;
		protected string color;

		public Fordon(int horsepower, string color)
		{
			this.horsepower = horsepower;
			this.color = color;
		}
		public virtual double Calc_Topspeed(int horsepower)
		{
			return horsepower * 1.5;
		}
		public void Horn()
		{
			Console.WriteLine("Du tutar.");
		}
	}
	class Lastbil : Fordon
	{
		private int last; //kilogram last
		public Lastbil(int horsepower, string color, int last) : base(horsepower, color)
		{
			this.last = last;
			this.horsepower = horsepower;
			this.color = color;
		}
		public double Calc_Topspeed(int horsepower, int last)
		{
			return (horsepower * 1.5) / (last / 7000);
		}
	}
}
Tog bort override frn funktionen Calc_Topspeed, o la till int klassifiering p horsepower & last. Fr mig verkar det funka nr jag valde Kr alternativet, r detta lsning tro? eller r det ngot annat problem som jag inte riktigt frsttt.
Edit:
En vn frklarade fr mig att man inte behver ha override om funktionen lgger till ytterligare argument som inte finns med i den funktionen du vill overridea, vilket innebr att det blir en ny funktion i princip, om jag frsttt det rtt.
__________________
Senast redigerad av DurrHurr 2022-04-09 kl. 21:53.
Citera
2022-04-09, 21:45
  #9
Medlem
Bonnatorps avatar
Citat:
Ursprungligen postat av DurrHurr
Kod:
using System;

namespace Fordon_Lastbil
{
	internal class Program
	{
		static void Main(string[] args)
		{
			Fordon volvo = new Fordon(90, "grn");
			Lastbil scania = new Lastbil(400, "vit", 3000);
			Run();
		}
		static void Run()
		{
			int temp = 0;
			do
			{
				Console.Clear();
				Console.WriteLine("Vlkommen till fordonssimulatorn.");
				Console.WriteLine("Vlj fordon:");
				Console.WriteLine("1 Volvo - bil");
				Console.WriteLine("2 Scania - lastbil");
				Console.Write("\nDitt val: ");
				try
				{
					temp = int.Parse(Console.ReadLine());
				}
				catch (Exception)
				{
					Console.WriteLine("Var god vlj en siffra bland menyalternativen.\n" +
						"Tryck vilken knappt som helst fr att terg till menyn.");
					Console.ReadKey(true);
					Run();
				}

				switch (temp)
				{
					case 1:

						Volvo();
						break;
					case 2:
						Scania();
						break;
					case 0:
						Console.WriteLine("Programmet avslutas.");
						break;
					default:
						Console.WriteLine("Felaktig inmatning.");
						Console.ReadKey();
						break;
				}
			} while (temp != 0);
		}
		static void Volvo()
		{
			int horsepower = 0;
			string color = "vit";
			Console.WriteLine("Hur mnga hstkrafter har bilen?");
			horsepower = int.Parse(Console.ReadLine());
			Console.WriteLine("Vilken frg r bilen?");
			color = Console.ReadLine();
			Fordon volvo = new Fordon(horsepower, color);
			int temp = 0;
			do
			{
				Console.Clear();
				Console.WriteLine("Vad ska bilen gra?.");
				Console.WriteLine("Vlj alternativ:");
				Console.WriteLine("1 Kra");
				Console.WriteLine("2 Tuta");
				Console.WriteLine("3 Huvudmeny");
				Console.Write("\nDitt val: ");
				try
				{
					temp = int.Parse(Console.ReadLine());
				}
				catch (Exception)
				{
					Console.WriteLine("Var god vlj en siffra bland menyalternativen.\n" +
						"Tryck vilken knappt som helst fr att terg till menyn.");
					Console.ReadKey(true);
					Volvo();
				}

				switch (temp)
				{
					case 1:
						Console.WriteLine("Den {0}a Volvon kr i {1} km/h", color, volvo.Calc_Topspeed(horsepower)); ;
						Console.ReadKey();
						break;
					case 2:
						volvo.Horn();
						Console.ReadKey();
						break;
					case 3:
						Run();
						break;
					case 0:
						Console.WriteLine("Programmet avslutas.");
						break;
					default:
						Console.WriteLine("Felaktig inmatning.");
						Console.ReadKey();
						break;
				}
			} while (temp != 0);
		}
		static void Scania()
		{
			int horsepower = 0;
			string color = "vit";
			int last = 0;
			Console.WriteLine("Hur mnga hstkrafter har fordonet?");
			horsepower = int.Parse(Console.ReadLine());
			Console.WriteLine("Vilken frg r fordonet?");
			color = Console.ReadLine();
			Console.WriteLine("Hur mnga kilo r lastat p fordonet?");
			last = int.Parse(Console.ReadLine());
			Lastbil scania = new Lastbil(horsepower, color, last);
			int temp = 0;
			do
			{
				Console.Clear();
				Console.WriteLine("Vad ska lastbilen gra?.");
				Console.WriteLine("Vlj alternativ:");
				Console.WriteLine("1 Kra");
				Console.WriteLine("2 Tuta");
				Console.WriteLine("3 Huvudmeny");
				Console.Write("\nDitt val: ");
				try
				{
					temp = int.Parse(Console.ReadLine());
				}
				catch (Exception)
				{
					Console.WriteLine("Var god vlj en siffra bland menyalternativen.\n" +
						"Tryck vilken knappt som helst fr att terg till menyn.");
					Console.ReadKey(true);
					Scania();
				}

				switch (temp)
				{
					case 1:
						Console.WriteLine("Den {0}a Scanian kr i {1} km/h", color, scania.Calc_Topspeed(horsepower, last)); ;
						Console.ReadKey();
						break;
					case 2:
						scania.Horn();
						Console.ReadKey();
						break;
					case 3:
						Run();
						break;
					case 0:
						Console.WriteLine("Programmet avslutas.");
						break;
					default:
						Console.WriteLine("Felaktig inmatning.");
						Console.ReadKey();
						break;
				}
			} while (temp != 0);
		}
	}
	class Fordon
	{
		protected int horsepower;
		protected string color;

		public Fordon(int horsepower, string color)
		{
			this.horsepower = horsepower;
			this.color = color;
		}
		public virtual double Calc_Topspeed(int horsepower)
		{
			return horsepower * 1.5;
		}
		public void Horn()
		{
			Console.WriteLine("Du tutar.");
		}
	}
	class Lastbil : Fordon
	{
		private int last; //kilogram last
		public Lastbil(int horsepower, string color, int last) : base(horsepower, color)
		{
			this.last = last;
			this.horsepower = horsepower;
			this.color = color;
		}
		public double Calc_Topspeed(int horsepower, int last)
		{
			return (horsepower * 1.5) / (last / 7000);
		}
	}
}
Tog bort override frn funktionen Calc_Topspeed, o la till int klassifiering p horsepower & last. Fr mig verkar det funka nr jag valde Kr alternativet, r detta lsning tro? eller r det ngot annat problem som jag inte riktigt frsttt.
Jo jag gjorde just dem, men av ngon orsak s blser mitt program bara rakt frbi krfunktionen och tergr till menyn, nr jag ska kra lastbilen.
Det r precis som om jag inte skulle ha en Console.ReadKey() efter Console.Write, fast jag har det.
Allt fungerar som det ska nr jag debuggar ocks, s jag frstr inte vad problemet r.

Edit:
Jo, nu fungerar det.
Tror jag kan ha sett fel p menyn fr kra/tuta nr den dk upp och trodde det var huvudmenyn.
__________________
Senast redigerad av Bonnatorp 2022-04-09 kl. 21:51.
Citera
2022-04-10, 14:43
  #10
Moderator
Pontiac-Garages avatar
Citat:
Ursprungligen postat av Bonnatorp
Jo jag gjorde just dem, men av ngon orsak s blser mitt program bara rakt frbi krfunktionen och tergr till menyn, nr jag ska kra lastbilen.
Det r precis som om jag inte skulle ha en Console.ReadKey() efter Console.Write, fast jag har det.
Allt fungerar som det ska nr jag debuggar ocks, s jag frstr inte vad problemet r.

Edit:
Jo, nu fungerar det.
Tror jag kan ha sett fel p menyn fr kra/tuta nr den dk upp och trodde det var huvudmenyn.

Ska du anvnda Console.WriteLine() s mnga ggr r det bttre att kra en multiline-strng, som r lttare att lsa:

Kod:
Console.WriteLine(@"Vlkommen till fordonssimulatorn.
Vlj fordon:
1 Volvo - bil
2 Scania - lastbil

Ditt val: ");

Sen r vl inte
Kod:
return (horsepower * 1.5) / (last / 7000);
s snyggt, bttre med:
Kod:
return horsepower * 10500 / last;

Bara sknhetstips fr din kod.
Citera
2022-04-10, 15:44
  #11
Medlem
Bonnatorps avatar
Citat:
Ursprungligen postat av Pontiac-Garage
Ska du anvnda Console.WriteLine() s mnga ggr r det bttre att kra en multiline-strng, som r lttare att lsa:

Kod:
Console.WriteLine(@"Vlkommen till fordonssimulatorn.
Vlj fordon:
1 Volvo - bil
2 Scania - lastbil

Ditt val: ");

Sen r vl inte
Kod:
return (horsepower * 1.5) / (last / 7000);
s snyggt, bttre med:
Kod:
return horsepower * 10500 / last;

Bara sknhetstips fr din kod.
Anvnder man @ fr automatiskt radbyte i strngar?
Trodde man behvde traggla manuellt med \n varje rad fr det. Kndes som ett rent aber precis som att infoga <br> eller vad det var efter varje rad i HTML dokument som inte anvnder wordpress eller liknande.

Att jag gjorde s dr med hastighetskalkylen var fr att det kndes mer naturligt att dela upp det p tv faktorer. En faktor fr hastigheten i relation till hstkrafterna, och en faktor fr hastighetsdelningen i relation till lasten.
Det var mycket enklare att ndra p ocks om det var lite skevt ngonstans, vilket det var d en lastbil p 200 hstar och 2 tons last skulle klara att kra 8km/h eller s.
Citera
2022-04-10, 16:14
  #12
Moderator
Pontiac-Garages avatar
Citat:
Ursprungligen postat av Bonnatorp
Anvnder man @ fr automatiskt radbyte i strngar?
Trodde man behvde traggla manuellt med \n varje rad fr det. Kndes som ett rent aber precis som att infoga <br> eller vad det var efter varje rad i HTML dokument som inte anvnder wordpress eller liknande.

Att jag gjorde s dr med hastighetskalkylen var fr att det kndes mer naturligt att dela upp det p tv faktorer. En faktor fr hastigheten i relation till hstkrafterna, och en faktor fr hastighetsdelningen i relation till lasten.
Det var mycket enklare att ndra p ocks om det var lite skevt ngonstans, vilket det var d en lastbil p 200 hstar och 2 tons last skulle klara att kra 8km/h eller s.

@ funkar p s stt att radbyten tas med i output, mycket snyggare n massa escape n.

Frstr, tnkte bara att det kan snyggas till.
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in