//A Domino Day-en a terep felépítéséhez háromféle dominót használnak.
//Csak egyfajta méretű szállítódoboz van, melynek a méretei: 50*80*40 cm.
//Az egyik napon 15 doboz dominó érkezik, mind azonos méretű
//dominókat tartalmaz.
//Feladat:
//Tárold a programban a 3 fajta dominó-méretet konstansokban:
//1. fajta dominó: 50 * 30 * 6 mm;
//2. fajta dominó: 40 * 25 * 5 mm;
//3. fajta dominó: 70 * 35 * 8 mm.
//Írd ki a képernyőre ezeket a méreteket, és kérdezd meg a felhasználót,
//hogy melyik fajta dominó érkezett ma. Írd ki a képernyőre, hogy akkora
//dominókból hány darab fért bele a 15 nagy dobozba. A megoldáshoz
//egymásba ágyazott szelekciókat használj.
//Vigyázz a tört számok kezelésénél.
Ebben a megoldásban a dominók három mérete külön van tárolva:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DominoDay
{
class Program
{
static void Main(string[] args)
{
const double dobozTerfogat = 50 * 10 * 80 * 10 * 40 * 10;
const double elsoTerfogat = 50 * 30 * 6;
const double elsoDarabDouble = dobozTerfogat * 15 / elsoTerfogat;
const int elsoDarabInt = (int)elsoDarabDouble; //típuskényszerítés: arra "kényszerítjük",
//hogy int legyen, ami azzal jár, hogy elveszítjük
//a tizedes részt - itt éppen ez a cél, így kerekítünk
//konstans értékadásánánál ugyanis nem használhatjuk a Convert függvényt
//ha nem konstans, akkor használhatjuk:
int elsoDarabKonvertalva = Convert.ToInt32(elsoDarabDouble);
/////////////////////////////////////////////////////////////////////////////
const double masodikTerfogat = 40 * 25 * 5 ;
const double masodikDarabDouble = dobozTerfogat * 15 / masodikTerfogat;
const int masodikDarabInt = (int)masodikDarabDouble; //típuskényszerítés
/////////////////////////////////////////////////////////////////////////////
const double harmadikTerfogat = 70 * 35 * 8;
const double harmadikDarabDouble = dobozTerfogat * 15 / harmadikTerfogat;
const int harmadikDarabInt = (int)harmadikDarabDouble; //típuskényszerítés
/////////////////////////////////////////////////////////////////////////////
Console.WriteLine("Első domino: 50 * 30 * 6");
Console.WriteLine("Második domino: 40 * 25 * 5");
Console.WriteLine("Harmadik domino: 70 * 35 * 8");
Console.Write("Melyik fajta dominó érkezett ma? (első/második/harmadik) ");
string fajta = Console.ReadLine();
if (fajta == "első")
{
Console.WriteLine("Ennyi dominó van a dobozban: {0}", elsoDarabInt); // egész számot kapunk, nincs kerekítve, csak levágtuk a tört részt
//vagyis megkaptuk a szám egész részét
Console.WriteLine("További lehetőségek, amik itt és most nem pontosak:");
Console.WriteLine(elsoDarabDouble); //tört számot kapunk
Console.WriteLine(elsoDarabKonvertalva); //egész számot kapunk, kerekítve
Console.WriteLine("{0:0}", elsoDarabDouble); //csak megformáztuk a kiírást, kerekíti a számot egésszé
Console.WriteLine("{0:0.000}", elsoDarabDouble); //csak megformáztuk a kiírást, kerekíti a számot 3 tizedesjegyre
}
else
{
if (fajta == "második")
{
Console.WriteLine("Ennyi dominó van a dobozban: {0}", masodikDarabInt);
}
else
{
if (fajta == "harmadik")
{
Console.WriteLine("Ennyi dominó van a dobozban: {0}", harmadikDarabInt);
}
else
{
Console.WriteLine("Szövegértési, vagy szövegalkotási problémád van. Fordulj szakemberhez.");
}
}
}
Console.ReadLine();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DominoDay
{
class Program
{
static void Main(string[] args)
{
const double dobozSzelesseg = 50 * 10;
const double dobozHosszusag = 80 * 10;
const double dobozMagassag = 40 * 10;
const double dobozTerfogat = dobozSzelesseg * dobozHosszusag * dobozMagassag;
/////////////////////////////////////////////////////////////////////////////
const double elsoSzelesseg = 50;
const double elsoHosszusag = 30;
const double elsoMagassag = 6;
const double elsoTerfogat = elsoSzelesseg * elsoHosszusag * elsoMagassag;
const double elsoDarabDouble = dobozTerfogat * 15 / elsoTerfogat;
const int elsoDarabInt = (int)elsoDarabDouble; //típuskényszerítés: arra "kényszerítjük",
//hogy int legyen, ami azzal jár, hogy elveszítjük
//a tizedes részt - itt éppen ez a cél, így kerekítünk
//konstans értékadásánánál ugyanis nem használhatjuk a Convert függvényt
//ha nem konstans, akkor használhatjuk:
int elsoDarabKonvertalva = Convert.ToInt32(elsoDarabDouble);
/////////////////////////////////////////////////////////////////////////////
const double masodikSzelesseg = 40;
const double masodikHosszusag = 25;
const double masodikMagassag = 5;
const double masodikTerfogat = masodikSzelesseg * masodikHosszusag * masodikMagassag;
const double masodikDarabDouble = dobozTerfogat * 15 / masodikTerfogat;
const int masodikDarabInt = (int)masodikDarabDouble; //típuskényszerítés
/////////////////////////////////////////////////////////////////////////////
const double harmadikSzelesseg= 70;
const double harmadikHosszusag = 35;
const double harmadikMagassag = 8;
const double harmadikTerfogat = harmadikSzelesseg * harmadikHosszusag * harmadikMagassag;
const double harmadikDarabDouble = dobozTerfogat * 15 / harmadikTerfogat;
const int harmadikDarabInt = (int)harmadikDarabDouble; //típuskényszerítés
/////////////////////////////////////////////////////////////////////////////
Console.WriteLine("Első domino: {0}*{1}*{2}", elsoSzelesseg, elsoHosszusag, elsoMagassag);
Console.WriteLine("Második domino: {0}*{1}*{2}", masodikSzelesseg, masodikHosszusag, masodikMagassag);
Console.WriteLine("Harmadik domino: {0}*{1}*{2}", harmadikSzelesseg, harmadikHosszusag, harmadikMagassag);
Console.Write("Melyik fajta dominó érkezett ma? (első/második/harmadik) ");
string fajta = Console.ReadLine();
if (fajta == "első")
{
Console.WriteLine("Ennyi dominó van a dobozban: {0}", elsoDarabInt); // egész számot kapunk, nincs kerekítve, csak levágtuk a tört részt
//vagyis megkaptuk a szám egész részét
Console.WriteLine("További lehetőségek, amik itt és most nem pontosak:");
Console.WriteLine(elsoDarabDouble); //tört számot kapunk
Console.WriteLine(elsoDarabKonvertalva); //egész számot kapunk, kerekítve
Console.WriteLine("{0:0}", elsoDarabDouble); //csak megformáztuk a kiírást, kerekíti a számot egésszé
Console.WriteLine("{0:0.000}", elsoDarabDouble); //csak megformáztuk a kiírást, kerekíti a számot 3 tizedesjegyre
}
else
{
if (fajta == "második")
{
Console.WriteLine("Ennyi dominó van a dobozban: {0}", masodikDarabInt);
}
else
{
if (fajta == "harmadik")
{
Console.WriteLine("Ennyi dominó van a dobozban: {0}", harmadikDarabInt);
}
else
{
Console.WriteLine("Szövegértési, vagy szövegalkotási problémád van. Fordulj szakemberhez.");
}
}
}
Console.ReadLine();
}
}
}
Nincsenek megjegyzések:
Megjegyzés küldése