C# For Dummies

Глава 5. Условни конструкции

1. Да се напише if-конструкция, която проверява стойността на две целочислени променливи и разменя техните стойности, ако стойността на първата променлива е по-голяма от втората.

Упътване: Прочетете за if конструкции.

Решение:
static void Main(string[] args)
{    
    Console.Write("Enter first number: ");
    int a = Int32.Parse(Console.ReadLine());
    Console.Write("Enter second number: ");
    int b = Int32.Parse(Console.ReadLine());    

    if (a > b)
    {
        a = a + b;
        b = a - b;
        a = a - b;
    }
    
    Console.WriteLine("First number - {0}, Second number - {1}.", a, b);
}

2. Напишете програма, която показва знака (+ или -) от произведението на три реални числа, без да го пресмята. Използвайте последователност от if оператори.

Упътване: Множество от ненулеви числа имат положително произведение, ако отрицателните сред тях са четен брой. Ако отрицателните числа в множеството са нечетен брой, произведението е отрицателно. Ако някое от числата е нула, произведението е нула.

Решение:
Link
3. Напишете програма, която намира най-голямото по стойност число, измежду три дадени числа.

Упътване: Можете да използвате вложени if конструкции.

Решение:
Link
4. Сортирайте 3 реални числа в намаляващ ред. Използвайте вложени if оператори.

Упътване: Първо намерете най-малкото от трите числа, след това го разменете с първото. После проверете дали второто е по-голямо от третото и ако е така, ги разменете.

Решение:
Link
5. Напишете програма, която за дадена цифра (0-9), зададена като вход, извежда името на цифрата на български език.

Упътване: Най-подходящо е да използвате switch конструкция.

Решение:
static void Main(string[] args)
{    
    Console.Write("Enter first number: ");
    int number = Int32.Parse(Console.ReadLine());

    switch (number)
    {
        case 0: Console.WriteLine("Nula"); break;
        case 1: Console.WriteLine("Edno"); break;
        case 2: Console.WriteLine("Dve"); break;
        case 3: Console.WriteLine("Tri"); break;
        case 4: Console.WriteLine("Chetiri"); break;
        case 5: Console.WriteLine("Pet"); break;
        case 6: Console.WriteLine("Shest"); break;
        case 7: Console.WriteLine("Sedem"); break;
        case 8: Console.WriteLine("Osem"); break;
        case 9: Console.WriteLine("Devet"); break;
        default: Console.WriteLine("Wrong input"); break;
    }
}

6. Напишете програма, която при въвеждане на коефициентите (a, b и c) на квадратно уравнение: ax2+bx+c, изчислява и извежда неговите реални корени (ако има такива). Квадратните уравнения могат да имат 0, 1 или 2 реални корена.

Упътване: Вижте начина за решаване на квадратно уравнение.

Решение:
Link
7. Напишете програма, която намира най-голямото по стойност число измежду дадени 5 числа.

Упътване: Използвайте вложени if конструкции. Можете да използвате конструкцията за цикъл for, за която можете да прочетете в Интернет.

Решение:
static void Main(string[] args)
{    
    Console.Write("Enter first number: ");
    int a = Int32.Parse(Console.ReadLine());
    Console.Write("Enter second number: ");
    int b = Int32.Parse(Console.ReadLine());
    Console.Write("Enter third number: ");
    int c = Int32.Parse(Console.ReadLine());
    Console.Write("Enter fourth number: ");
    int d = Int32.Parse(Console.ReadLine());
    Console.Write("Enter fifth number: ");
    int e = Int32.Parse(Console.ReadLine());
    
    if (a < b) a = b;
    if (a < c) a = c;
    if (a < d) a = d;
    if (a < e) a = e;
    
    Console.WriteLine("{0} is the biggest number.", a);
}

8. Напишете програма, която по избор на потребителя прочита от конзолата променлива от тип int, double или string. Ако променливата е int или double, трябва да се увеличи с 1. Ако променливата е string, трябва да се прибави накрая символа "*". Отпечатайте получения резултат на конзолата. Използвайте switch конструкция.

Упътване: Използвайте входна променлива, която да показва от какъв тип ще е входа, т.е. при въвеждане на 0 типа е int, при 1 е double и при 2 е string.

Решение:
Link
9. Дадени са пет цели числа. Напишете програма, която намира онези подмножества от тях, които имат сума 0. Примери:
- Ако са дадени числата {3, -2, 1, 1, 8}, сумата на -2, 1 и 1 е 0.
-Ако са дадени числата {3, 1, -7, 35, 22}, няма подмножества със сума 0.

Упътване: Използвайте вложени if конструкции или последователност от сравнения, за да проверите сумите на всичките 15 подмножества на дадените числа (без празното).

Решение:
Link
10. Напишете програма, която прилага бонус точки към дадени точки в интервала [1..9] чрез прилагане на следните правила:
- Ако точките са между 1 и 3, програмата ги умножава по 10.
- Ако точките са между 4 и 6, ги умножава по 100.
- Ако точките са между 7 и 9, ги умножава по 1000.
- Ако точките са 0 или повече от 9, се отпечатва съобщение за грешка.

Упътване: Използвайте switch конструкция и накрая изведете като резултат на конзолата пресметнатите точки.

Решение:
Link
11. Напишете програма, която преобразува дадено число в интервала [0..999] в текст, съответстващ на българското произношение на числото. Примери:
- 0 → "Нула"
- 12 → "Дванадесет"
- 98 → "Деветдесет и осем"
- 273 → "Двеста седемдесет и три"
- 400 → "Четиристотин"
- 501 → "Петстотин и едно"
- 711 → "Седемстотин и единадесет"

Упътване: Използвайте вложени switch конструкции. Да се обърне специално внимание на числата от 0 до 19 и на онези, в които единиците са 0.

Решение:
Link

← Обратно