From 672b61591e9538cca44f2742a51d278c7160d3a8 Mon Sep 17 00:00:00 2001
From: Vesikukka Teemu <teemu.t.vesikukka@student.jyu.fi>
Date: Thu, 3 Apr 2025 13:47:44 +0300
Subject: [PATCH] harjoitustyon palautus

---
 .../pankkiautomaatti/Pankkiautomaatti.cs      | 84 +++++++++++--------
 harjoitustyo/pankkiautomaatti/saldo.txt       |  2 +-
 harjoitustyo/pankkiautomaatti/tiliote.txt     |  4 +-
 3 files changed, 54 insertions(+), 36 deletions(-)

diff --git a/harjoitustyo/pankkiautomaatti/Pankkiautomaatti.cs b/harjoitustyo/pankkiautomaatti/Pankkiautomaatti.cs
index aa99572..5375e50 100644
--- a/harjoitustyo/pankkiautomaatti/Pankkiautomaatti.cs
+++ b/harjoitustyo/pankkiautomaatti/Pankkiautomaatti.cs
@@ -1,7 +1,7 @@
 using System;
-using System.Text;
 using System.Linq;
 using System.Collections.Generic;
+using System.Globalization;
 using System.IO;
 
 /// @author Teemu Vesikukka
@@ -11,6 +11,10 @@ using System.IO;
 /// </summary>
 public class Pankkiautomaatti
 {
+    private static string _polkuSaldo = @"C:\Users\Vespa\Desktop\gradia\ohjelmointi1_jyu_2025\harjoitustyo\Harjoitustyo\Pankkiautomaatti\saldo.txt";
+    private static string _polkuTiliote = @"C:\Users\Vespa\Desktop\gradia\ohjelmointi1_jyu_2025\harjoitustyo\Harjoitustyo\Pankkiautomaatti\tiliote.txt";
+    
+    
     /// <summary>
     /// Pääohjelma joka kysyy pin-koodin kayttajalta ja pin-koodin ollessa oikein, paastaa
     /// asiakkaan omalle tilille
@@ -19,56 +23,63 @@ public class Pankkiautomaatti
     {
         Aloitus();
         
-        if (PinKoodi() == true)
+        if (PinKoodi())
         {
             double alkusaldo = AlkuSaldo();
-            List<string> tiliote = new List<string>();
-            tiliote = File.ReadAllLines("Tiliote.txt").ToList();
+            
+            List <string> tiliote = File.ReadAllLines("Tiliote.txt").ToList();
             Valikko(alkusaldo, tiliote);
         }
         Lopetus();
     }
     
-    public static void Aloitus()
+    
+    /// <summary>
+    /// Ohjelman aloitus
+    /// </summary>
+    private static void Aloitus()
     {
         Console.WriteLine("Tervetuloa!");
         Console.WriteLine("Syota kortti ole hyva");
     }
+    
+    
     /// <summary>
     /// Aliohjelma lukee tekstitiedostosta tilin saldon
     /// </summary>
     /// <returns>saldo</returns>
-    public static double AlkuSaldo()
+    private static double AlkuSaldo()
     {
-        const string POLKU = @"C:\Users\Vespa\Desktop\gradia\ohjelmointi1_jyu_2025\harjoitustyo\Harjoitustyo\Pankkiautomaatti\saldo.txt";
-        string[] luetutRivit = File.ReadAllLines(POLKU);
+        string[] luetutRivit = File.ReadAllLines(_polkuSaldo);
         double saldo = Convert.ToDouble(luetutRivit[0]);
         return saldo;
     }
     
+    
     /// <summary>
     /// Aliohjelma vie tekstitiedostoon tilin saldon
     /// </summary>
     /// <param name="loppuSaldo"></param>
-    public static void LoppuSaldo(double loppuSaldo)
+    private static void LoppuSaldo(double loppuSaldo)
     {
         string [] saldo = new string[1];
-        saldo[0] = loppuSaldo.ToString();
-        const string POLKU = @"C:\Users\Vespa\Desktop\gradia\ohjelmointi1_jyu_2025\harjoitustyo\Harjoitustyo\Pankkiautomaatti\saldo.txt";
-        File.WriteAllLines(POLKU, saldo);
+        saldo[0] = loppuSaldo.ToString(CultureInfo.CurrentCulture);
+        
+        File.WriteAllLines(_polkuSaldo, saldo);
      
     }
     
+    
     /// <summary>
     /// Aliohjelma vie tekstitiedostoon tilin käyttäjän nostot ja talletukset
     /// </summary>
     /// <param name="tiliote">tiliote</param>
-    public static void LoppuTiliote(List<string> tiliote)
+    private static void LoppuTiliote(List<string> tiliote)
     {
-        const string POLKU = @"C:\Users\Vespa\Desktop\gradia\ohjelmointi1_jyu_2025\harjoitustyo\Harjoitustyo\Pankkiautomaatti\tiliote.txt";
-        File.WriteAllLines(POLKU, tiliote);
+        File.WriteAllLines(_polkuTiliote, tiliote);
     }
     
+    
     /// <summary>
     /// Aliohjelma joka pyytaa asiakkaalta pin-koodin ja koodin
     /// ollessa oikein paastaa asiakkaan kayttamaan tilia
@@ -79,7 +90,7 @@ public class Pankkiautomaatti
     /// PinKoodi(),"1234"===true;
     /// </pre>
     /// </example>
-    public static bool PinKoodi()
+    private static bool PinKoodi()
     {
         int yritykset = 1;
         int pinkoodi = 1234;
@@ -89,7 +100,7 @@ public class Pankkiautomaatti
         yritykset++;
         if (koodi.Equals(pinkoodi))
         {
-            onkoOikien = true;
+            
         }
         else
         {
@@ -115,11 +126,13 @@ public class Pankkiautomaatti
         return onkoOikien;
     }
     
+    
     /// <summary>
     /// Päävalikko josta hoidetaan tiliasiat
     /// </summary>
-    /// <param name="alkusaldo"></param>
-    public static void Valikko(double alkusaldo, List<string> tiliote)
+    /// <param name="alkusaldo">alkusaldo</param>
+    /// <param name="tiliote">tiliote</param>
+    private static void Valikko(double alkusaldo, List<string> tiliote)
     {
         double saldo = alkusaldo;
         while (true)
@@ -154,14 +167,17 @@ public class Pankkiautomaatti
             }
         }
     }
+    
+    
     /// <summary>
     /// Funktio joka ottaa tililta rahaa asiakkaan nostaessa tililta rahaa
     /// Funktio palauttaa saldon
     /// Tilin saldon ollessa liian pieni tililta ei pysty nostamaan rahaa
     /// </summary>
     /// <param name="saldo">parametrina viedaan saldo</param>
+    /// <param name="tiliote">parametrina viedaan tiliote</param>
     /// <returns>palauttaa tilin saldon</returns>
-    public static double Nosto(double saldo, List<string> tiliote)
+    private static double Nosto(double saldo, List<string> tiliote)
     {
         Console.WriteLine("Kuinka paljon haluat nostaa: ");
         double nosto = Convert.ToDouble(Console.ReadLine());
@@ -169,7 +185,7 @@ public class Pankkiautomaatti
         if (saldo > 0.00 && nosto < saldo)
         {
             saldo = saldo - nosto;
-            string rivi = DateTime.Now.ToString("dd/MM/yyyy")+ "\totto" + "\t" + " - "+ nosto.ToString();
+            string rivi = DateTime.Now.ToString("dd/MM/yyyy")+ "\totto" + "\t" + " - "+ nosto.ToString(CultureInfo.CurrentCulture);
             tiliote.Add(rivi);
         }
         else
@@ -179,39 +195,44 @@ public class Pankkiautomaatti
 
         return saldo;
     }
+    
+    
     /// <summary>
     /// funktio joka lisaa tilille asiakkaan lisaaman summan ja palauttaa saldon
     /// </summary>
     /// <param name="saldo">parametrina viedaan alkuperäinen saldo</param>
+    /// <param name="tiliote">parametrina viedaan alkuperäinen tiliote</param>
     /// <returns>palauttaa lisatyn saldon</returns>
-    public static double Talletus(double saldo, List<string> tiliote)
+    private static double Talletus(double saldo, List<string> tiliote)
     {
         Console.Write("Kuinka paljon haluat tallettaa tilille: ");
         double talletus = Convert.ToDouble(Console.ReadLine());
         //double talletus = double.Parse(Console.ReadLine());
 
         saldo = saldo + talletus;
-        string rivi = DateTime.Now.ToString("dd/MM/yyyy")+ "\ttalletus" + "\t" + " + " +talletus.ToString();
+        string rivi = DateTime.Now.ToString("dd/MM/yyyy")+ "\ttalletus" + "\t" + " + " +talletus.ToString(CultureInfo.CurrentCulture);
         tiliote.Add(rivi);
         
         return saldo;
     }
   
+    
     /// <summary>
     /// Aliohjelma joka tulostaa tlin saldon
     /// </summary>
     /// <param name="saldo">parametrina viety tilin saldo</param>
-    public static void TulostaSaldo(double saldo)
+    private static void TulostaSaldo(double saldo)
     {
         Console.WriteLine("Tililla on rahaa " + " + " + saldo + " euroa");
         Console.WriteLine("Paavalikkoon paase painamalla enter");
-        string syote = Console.ReadLine();
+        Console.ReadLine();
     }
     
+    
     /// <summary>
     /// Aliohjelma joka tulostaa tilitapahtumat
     /// </summary>
-    public static void TulostaTiliote(List<string> tiliote, double saldo)
+    private static void TulostaTiliote(List<string> tiliote, double saldo)
     {
         int viimeinen = tiliote.Count - 1;
         string temp;
@@ -228,22 +249,17 @@ public class Pankkiautomaatti
             Console.WriteLine(tiliote[lkm]);
             lkm++;
         }  
-        /*
-        for (int i = 0; i < tiliote.Count; i++)
-        {
-            string rivi = tiliote[i];
-            Console.WriteLine("{0, 2} ", rivi);
-        }*/
         
         Console.WriteLine("Tilin saldo: {0,10:f2}\t", saldo);
         Console.WriteLine("alkuvalikkoon paaset painamalla enter");
-        string merkki = Console.ReadLine();
+        Console.ReadLine();
     }
     
+    
     /// <summary>
     /// Aliohjelma joka tulostaa naytolle ohjelmastapoistuttaessa
     /// </summary>
-    public static void Lopetus()
+    private static void Lopetus()
     {
         Console.WriteLine("Kiitos kaynnista");
         Console.WriteLine("Tervetuloa uudelleen");
diff --git a/harjoitustyo/pankkiautomaatti/saldo.txt b/harjoitustyo/pankkiautomaatti/saldo.txt
index 1b79f38..697cb3a 100644
--- a/harjoitustyo/pankkiautomaatti/saldo.txt
+++ b/harjoitustyo/pankkiautomaatti/saldo.txt
@@ -1 +1 @@
-500
+300
diff --git a/harjoitustyo/pankkiautomaatti/tiliote.txt b/harjoitustyo/pankkiautomaatti/tiliote.txt
index 28a2f61..1a9d2bb 100644
--- a/harjoitustyo/pankkiautomaatti/tiliote.txt
+++ b/harjoitustyo/pankkiautomaatti/tiliote.txt
@@ -1 +1,3 @@
-PVM     Tapahtuma   Summa
\ No newline at end of file
+PVM     Tapahtuma   Summa
+03.04.2025	otto	 - 100
+03.04.2025	talletus	 + 100
-- 
GitLab