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
← Обратно