11-задача от "По-сложни цикли" - Enter even number
http://pastebin.com/W0kLGyNc > 85/100 Къде греша ?
http://pastebin.com/W0kLGyNc > 85/100 Къде греша ?
Трябва да вкараш всичко между 20 и 27-ми ред в try-a, тоест if-a ти трябва да е вътре в самия try и чак след него да дойде catch-a
http://pastebin.com/gcLBYn8W 100/100
Едно решени е от мен ->http://pastebin.com/CN9fEmAG
Здравей! Забелязах, че в кода ти липсва възможността да изписва "Invalid number!", ако входът е string. А също и, че при въвеждане на string и две последователни нечетни числа има една подкана за въвеждане на ново число, която не работи правилно ( тествай: string, нечетно число, нечетно число, четно число).
Иначе като цяло програмата ми хареса много.
Поздрави!
Не е нужно да усложняваш кода с проверки. Никъде в програминг бейсикс не се иска проберка на вход.
А иначе ако те влече да си напред с материала, се научи да трасираш / дебъгваш.
Ето едно решение но с TryParse:
static void Main()
{
var input = Console.ReadLine();
int value;
while (!int.TryParse(input, out value) || value % 2 != 0)
{
if (value % 2 != 0) Console.Write("The number is not even.\nEnter even number: ");
else Console.Write("Invalid number!\nEnter even number: ");
input = Console.ReadLine();
}
if (value % 2 == 0) Console.WriteLine($"Even number entered: {value}");
}
http://pastebin.com/4y7hkwyU Tova e moeto re6enie i mi dava 100/100 razgledai go nadqvam se da ti pomogne :)
Здравей,
ето и моето решение с try - catch конструкцията вградена в един do-while цикъл.
Успех:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace EnterEvenNumber
{
class Program
{
static void Main(string[] args)
{
int n;
do
{
try
{
Console.Write("Enter even number: ");
n = int.Parse(Console.ReadLine());
if (n % 2 == 0)
{
break;
}
Console.WriteLine("The number is not even.");
Console.Write("Enter even number: ");
n = int.Parse(Console.ReadLine());
}
catch (Exception)
{
Console.WriteLine("Invalid number!");
}
} while (true);
Console.WriteLine("Even number entered: {0}", n);
}
}
}
https://pastebin.com/eLDWBNs0 100/100