While ciklus gyakorlás
Házi feladat befejezni. Számonkérés várható.
//1.feladat:
//Írjunk
végtelen ciklust, ami „végtelenszer” kiírja, hogy „Úgyse lépek ki :)
//2.feladat:
//Kérd be
a felhasználótól, hogy hány nap múlva lesz az uniós pályázat beadási
határideje.
//Számolj
visszafelé egyesével 1-ig, az aktuális értéket írd ki a képernyőre.
//Amikor eljött a határidő
napja, írd ki, hogy ma van a határidő napja.
//3.feladat:
//Középiskolák
pályázhattak hardver beszerzésre. A teljes pályázati összeg 10 millió forint.
//Százezer,
kétszázezer, háromszázezer forintokra lehetett pályázni.
//Modellezzük
az iskolák igényét úgy, hogy a százezer forintot véletlenül szorozzuk be
//cikluslépésenként
1-2-3-mal.
//A
ciklus addig megy, amíg el nem fogy minden pénz.
//Minden
cikluslépésben írd ki, hogy mennyi pénz van még.
//Ha a
végén mínuszba ment, a ciklus után írd ki, hogy az utolsó pályázónak
//mennyi
maradt, valójában azt kapja meg.
using System;
using System.Threading;
namespace ConsoleApp9
{
class Program
{
static void Main(string[] args)
{
//1.feladat:
//Írjunk végtelen ciklust, ami „végtelenszer” kiírja, hogy „Úgyse lépek ki :)
//while (true)
{
Console.WriteLine("Úgyse lépek ki :)");
Thread.Sleep(80);
Console.Beep(100, 100);
}
//2.feladat:
//Kérd be a felhasználótól, hogy hány nap múlva lesz az uniós pályázat beadási határideje.
//Számolj visszafelé egyesével 1-ig, az aktuális értéket írd ki a képernyőre.
//Amikor eljött a határidő napja, írd ki, hogy ma van a határidő napja.
Console.WriteLine("Hány nap múlva van a határidő?");
int nap = Convert.ToInt32(Console.ReadLine());
while (nap > 0)
{
Console.WriteLine("{0} nap van még.", nap);
nap--;
}
Console.WriteLine("Ma van a határidő napja.");
//3.feladat:
//Középiskolák pályázhattak hardver beszerzésre. A teljes pályázati összeg 10 millió forint.
//Százezer, kétszázezer, háromszázezer forintokra lehetett pályázni.
//Modellezzük az iskolák igényét úgy, hogy a százezer forintot véletlenül szorozzuk be
//cikluslépésenként 1-2-3-mal.
//A ciklus addig megy, amíg el nem fogy minden pénz.
//Minden cikluslépésben írd ki, hogy mennyi pénz van még.
//Ha a végén mínuszba ment, a ciklus után írd ki, hogy az utolsó pályázónak
//mennyi maradt, valójában azt kapja meg.
//megoldás:
Random rnd = new Random();
double maxOsszeg = 10000000;
double aktualisIskolaOsszeg = 0;
int i = 0;
while (maxOsszeg > 0)
{
aktualisIskolaOsszeg = 100000 * rnd.Next(1, 4);
if ((maxOsszeg - aktualisIskolaOsszeg) > 0)
{
maxOsszeg = maxOsszeg - aktualisIskolaOsszeg;
Console.WriteLine("A(z) {0}. iskola nyert {1} forintot. Maradt még:{2}Ft!", i + 1, aktualisIskolaOsszeg, maxOsszeg);
}
else
{
if ((maxOsszeg - aktualisIskolaOsszeg) == 0)
{
maxOsszeg = 0;
Console.WriteLine("A(z) {0}. iskola nyert {1} forintot. Maradt még:{2}Ft!", i + 1, aktualisIskolaOsszeg, maxOsszeg);
}
else //akkor kisebb
{
Console.WriteLine("A(z) {0}. iskola nyert {1} forintot. Maradt még:{2}Ft!", i + 1, maxOsszeg, 0);
maxOsszeg = 0;
}
}
i++;
}
Console.ReadLine();
}
}
}