source: 2015/30/SonjaH/DebugKoe/DebugKoe/DebugKoe.cs @ 10335

Revision 7085, 3.3 KB checked in by soonhuot, 4 years ago (diff)

Uusi versio apinapelistä.

Line 
1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using System.Threading.Tasks;
6
7public class DebugKoe
8{
9    public static void Testi(Tarkistaja tarkistaja)
10    {
11        //Läpäise kolme kohtaa käyttämällä apuna vain debuggeria, itse koodiin ei saa koskea
12
13        //Seuraava bool pitää muuttaa trueksi käyttäen debuggeria.
14
15        bool lapaistaanko = false;
16
17
18        tarkistaja.TarkistaEnsimmainenTehtava(lapaistaanko);
19
20        //Seuraavaksi saat taulukon lukuja. Taulukko sisältää jotain sattumanvaraista kokonaislukua tuhansia kappaleita.
21        //Tehtävänäsi on löytää kaikkia muita suurempi luku käyttäen breakpointteja.
22        //Muuta muuttuja luvunPaikka kertomaan taulukosta löydetyn luvun paikka.
23        int luvunPaikka = -1;
24
25        int[] lukuTaulukko = tarkistaja.AnnaTaulukko();
26        luvunPaikka = KayTaulukkoLapi(lukuTaulukko); //KäyTaulukkoLäpi aliohjelmaan voi mennä sisälle
27
28        tarkistaja.TarkistaToinenTehtava(luvunPaikka);
29
30        //Viimeisenä tehtävänä pitää arvioida, mikä seuraavissa muuttujissa on pielessä ja muuttaa ne miksi tahansa järkeväksi arvoksi
31        //Huomioi, että kaikissa muuttujissa ei välttämättä ole virheitä.
32        double jaettava = 10;
33        double jakaja = 0;
34
35        Vector ensimmainen = new Vector(25.5, 25.5);
36        Vector toinen = new Vector(1, 1.5);
37        double etaisyys = tarkistaja.LaskeEtaisyys(ensimmainen, toinen);
38
39        tarkistaja.TarkistaMuuttujienOikeellisuus(jaettava, jakaja, etaisyys);
40
41    }
42
43
44    /// <summary>
45    /// Käydään annettua taulukkoa läpi ja palautetaan luvun paikka. (Nykyisellään ei palauta oikeasti luvunpaikkaa)
46    /// </summary>
47    /// <param name="taulukko">Läpikäytävä kokonaislukutaulukko</param>
48    /// <returns>indeksi, jossa erilainen kohta oli</returns>
49    public static int KayTaulukkoLapi(int[] taulukko)
50    {
51        int luvunPaikka = -1;
52
53        int luku = taulukko[0];
54        int edellinenLuku = luku;
55        for (int i = 0; i < taulukko.Length; i++)
56        {
57            edellinenLuku = luku;
58            luku = taulukko[i];
59
60        }
61        return luvunPaikka;
62    }
63
64
65    /// <summary>
66    /// Odottaa näppäimen painallusta, jonka jälkeen tulostetaan rivi välimerkkejä
67    /// </summary>
68    public static void OdotaNappain()
69    {
70        System.Console.ReadKey();
71        System.Console.WriteLine("----------------------------------------------------------------------");
72    }
73
74    public static void Main()
75    {
76        Tarkistaja tarkistaja = new Tarkistaja();
77
78        System.Console.WriteLine("Aloitetaan Debug-koe!");
79        System.Console.WriteLine("Voit yrittää uudestaan tehtäviä, kunnes onnistut");
80        System.Console.WriteLine("Hyväksyttyjä tehtäviä ei tarvitse tehdä uudestaan");
81
82        System.Console.WriteLine("Aloita testi painamalla jotakin näppäintä");
83        OdotaNappain();
84        while (!tarkistaja.OnkoKaikkiTestitLapi())
85        {
86            System.Console.WriteLine("Kun olet valmis yrittämään uutta kierrosta tai lopettamaan, paina mitä tahansa näppäintä");
87            OdotaNappain();
88            DebugKoe.Testi(tarkistaja);
89        }
90        System.Console.WriteLine("Olet onnistunut läpäisemään debug-kokeen!");
91        OdotaNappain();
92    }
93
94}
Note: See TracBrowser for help on using the repository browser.