//Omdanner en gemt string til et Posteringsobjekt private Posteringer Unwrap(string input) { char semicolon = ';'; string[] args = input.Split(semicolon); return(new Posteringer(args[0], Mathh.stringToFloat(args[1]), args[2], Convert.ToDateTime(args[3]), Convert.ToBoolean(args[4]))); }
public static float GetPosTal(string prompt) { float result; string input; do { Console.Write(prompt); input = Console.ReadLine(); result = Mathh.stringToFloat(input); }while (result == 0); return(result); }
//Opret postering BLIVER KALDT AF DE TO OPRET KNAPPER private void OpretPostering(object sender, EventArgs e) { string beskrivelse; string beløb; string kategori; DateTime date; bool erUdgift; //Hvis intægtknappen trykkes oprettes en indtægt if (sender == btnOpret_i) { beskrivelse = txtBeskrivelse_i.Text; beløb = txtBeløb_i.Text; kategori = cBoxKategori_i.SelectedItem.ToString(); date = datePicker_i.Value; erUdgift = false; Posteringer postering = new Posteringer(beskrivelse, Mathh.stringToFloat(beløb), kategori, date, erUdgift); posteringer.Add(postering); } //Hvis udgiftknappen trykkes oprettes en udgift else if (sender == btnOpret_u) { beskrivelse = txtBeskrivelse_u.Text; beløb = txtBeløb_u.Text; kategori = cBoxKategori_u.SelectedItem.ToString(); date = datePicker_u.Value; erUdgift = true; Posteringer postering = new Posteringer(beskrivelse, Mathh.stringToFloat(beløb), kategori, date, erUdgift); posteringer.Add(postering); } lblBalance.Text = Posteringer.Balance.ToString() + " " + posteringer.Count.ToString(); }
//Returnerer -1 hvis string er faulty public static float stringToFloat(string input) { //Variabler int længde = 0; bool komma = false; string tal = ""; float PositivTal = 0; //Finder længde før komma og fjerner komma for (int i = 0; i < input.Length; i++) { if (input[i] == '.' || input[i] == ',') { if (komma == true) { return(0); } komma = true; continue; } else if (komma == false) { længde++; } tal += input[i].ToString(); } //Omdanner stringen til float ved at gå igennem hvert char for (int i = 0; i < tal.Length; i++) { switch (tal[i]) { case '0': break; case '1': PositivTal += Mathh.Pot(10, længde - (i + 1)) * 1; break; case '2': PositivTal += Mathh.Pot(10, længde - (i + 1)) * 2; break; case '3': PositivTal += Mathh.Pot(10, længde - (i + 1)) * 3; break; case '4': PositivTal += Mathh.Pot(10, længde - (i + 1)) * 4; break; case '5': PositivTal += Mathh.Pot(10, længde - (i + 1)) * 5; break; case '6': PositivTal += Mathh.Pot(10, længde - (i + 1)) * 6; break; case '7': PositivTal += Mathh.Pot(10, længde - (i + 1)) * 7; break; case '8': PositivTal += Mathh.Pot(10, længde - (i + 1)) * 8; break; case '9': PositivTal += Mathh.Pot(10, længde - (i + 1)) * 9; break; default: return(0); } } return(PositivTal); }