Proměnná double

Int, který jsme si zatím ukázali, umí pouze celá čísla. Pokud chceme pracovat i s desetinnými čísly, musíme použít double.

Zde je menší příklad funkčnosti:

int x = 51;
int y = 7;
Console.WriteLine(x/y);

double z = 51;
double w = 7;
Console.WriteLine(z/w);
        

Výstup by měl vypadat nějak takto:

7
7.28571428571429
        

Pokud chceme číst vstup od uživatele a ukládat ho do double, musíme ho podobně jako u int konvertovat ze stringu do double. To se dělá následujícím způsobem:

double x;
x = Convert.ToDouble(Console.ReadLine());
        

Zadání: Kalkulačka

Vytvořte kalkulačku, která si od uživatele vezme 2 čísla a provede s nimi operaci, kterou si uživatel vybere. Nezapomeňte ošetřit, aby uživatel nemohl dělit nulou.

Příklady výstupu:

Zadejte první číslo: 45
Zadejte druhé číslo: 51
Zadejte operaci (+,-,*,/): +
Výsledek: 91
        
Zadejte první číslo: 31
Zadejte druhé číslo: 17
Zadejte operaci (+,-,*,/): -
Výsledek: 14
        
Zadejte první číslo: 35
Zadejte druhé číslo: 4
Zadejte operaci (+,-,*,/): *
Výsledek: 140
        
Zadejte první číslo: 51
Zadejte druhé číslo: 7
Zadejte operaci (+,-,*,/): /
Výsledek: 7,28571428571429
        
using System;

class Program
{
    static void Main()
    {
        double x;
        double y;
        string operace;

        Console.Write("Zadejte první číslo: ");
        x = Convert.ToDouble(Console.ReadLine());

        Console.Write("Zadejte druhé číslo: ");
        y = Convert.ToDouble(Console.ReadLine());

        Console.Write("Zadejte operaci (+,-,*,/): ");
        operace = Console.ReadLine();

        if (operace == "+")
        {
            Console.WriteLine(x + y);
        }
        else if (operace == "-")
        {
            Console.WriteLine(x - y);
        }
        else if (operace == "*")
        {
            Console.WriteLine(x * y);
        }
        else if (operace == "/")
        {
            if (y == 0)
            {
                Console.WriteLine("Nelze dělit nulou!");
            }
            else
            {
                Console.WriteLine(x / y);
            }
        }

        Console.ReadLine();
    }
}