03. oktober 2013 - 09:47Der er
18 kommentarer og 1 løsning
Hvordan laver jeg en porto
Hej. jeg er lige begyndt at programmer i c# og jeg vil gerne lave en konsolprogram der kan udskrive prisen for et brev (porto). Som input skal programmet modtage brevets vægt.
Der skal regnes med følgende priser:
Vægt < 20 gram = 5,00 kr. Vægt > 20 og < 50 = 7,00 kr. Vægt > 51 og < 100 gram = 10,00 kr. Vægt > 100 og < 150 gram = 15,00 kr. Vægt > 150 og < 200 gram = 20,00 kr. Eller en pakke og pris = 30,00 kr.
er der nogen der kan hjælpe mig med porto eller give mig en fuld kode?
Okay. Her er lavet en hurtig løsning. Jeg er SIKKER på at du kan finde en bedre kode. Men som sagt er jeg også ny og så er jeg slet ikke god til matematik. Jeg ved at man kan skrive matematiske koder, som gør selveste kildekoden lettere at gennemskue. Men er er et eksempel på hvordan det kan gøres. Jeg er sikker på at du selv kan udfylde resten. Jeg har skrevet det i visual studio Express. Så du burde kunne copy paste det. Lad mig vide om det var det du ledte efter :)
using System; using System.Collections.Generic; using System.Linq; using System.Text;
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { string answer;
bool brev = true; bool pakke = false;
Console.WriteLine("skal du sende en pakke eller et brev? "); answer = Console.ReadLine().ToLower();
if (answer == "brev") { Console.WriteLine("indtast venligst vægten på dit brev i Gram"); answer = Console.ReadLine(); } { if (answer == "0") Console.WriteLine("Du kan ikke sende et brev der ikke vejer noget"); if (answer == "1") Console.WriteLine("Du har tastet 1, hvilket betyder at dit brev vejer 1 gram. Og derfor er Prisen på dit brev, 5,00kr i porto"); if (answer == "2") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "3") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "4") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "5") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "6") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "7") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "8") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "9") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "10") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "11") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "12") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "13") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "14") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "15") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "16") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "17") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "18") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "19") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); if (answer == "20") Console.WriteLine("Prisen på dit brev er 5,00kr i porto"); }
if (answer == "pakke") Console.WriteLine("indtast venligst vægten på din pakke");
For resten!! Hvis du vil holde konsol vinduet åbent under testen/debugging. Så skal du holde ctrl nede mens du trykker f5. Ellers kan du skrive Console.ReadLine(); til sidst, det glemte jeg lige...
public int Fee(int fee){ if(fee < 0) throw new Exception("XXXXXXXXXXXX"); if (Enumerable.Range(0, 20).Contains(fee)) return 5; } if (Enumerable.Range(21, 50).Contains(fee)) return 7; } osv..... }
Det bemærkede jeg godt. Risikoen for, at trådsstarteren ville glemme "grænseværdierne" var formentlig bare overhængende, hvis det ikke blev præciseret :-)
I øvrigt vil jeg mene, at "fee <= 20" eller "fee >= 20" ville være mere korrekt.
Husk at giv point til den eller dem som har hjulpet dig.
Synes godt om
Slettet bruger
08. oktober 2013 - 09:52#16
@arne_v hvordan?
Synes godt om
Slettet bruger
08. oktober 2013 - 13:39#17
Fandt ud af det. Koden var...
[code] class Program { static double Vægt, Porto; static string Pakke;
static void Main(string[] args) { try { Console.Write("Ønsker du at sende en pakke(J/N)? "); Pakke = Console.ReadLine().ToUpper();
if (Pakke.Equals("J")) Porto = 30.00; else { Console.Write("\nindtast brevets vægt: "); Vægt = double.Parse(Console.ReadLine());
if (Vægt <= 20) Porto = 5.00; else if (Vægt <= 50) Porto = 7.00; else if (Vægt <= 100) Porto = 10.00; else if (Vægt <= 150) Porto = 15.00; else if (Vægt <= 200) Porto = 20.00; else { Console.Write("\nbrevert er en storbrev"); Porto = 25.00; } } Console.Write("\n\nPORTO = {0} Kr.", string.Format("{0:0.00}", Porto)); } catch { Console.WriteLine("Vægten er ikke korrekt angivet!"); } Console.ReadLine();
OG som kalp skriver, skal du nok lige overveje, hvis er under nul.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.