Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace ConsoleApplication1
- {
- class odd_even_pos
- {
- static void Main(string[] args)
- {
- int count = int.Parse(Console.ReadLine());
- double oddSum = 0; // правилно е да се напише 0.0
- double oddMin = double.MaxValue;
- double oddMax = double.MinValue;
- double evenSum = 0; // правилно е да се напише 0.0
- double evenMin = double.MaxValue;
- double evenMax = double.MinValue;
- if (count == 0) // Концептуална грешка - от самото начало дефинирайки тези 2 случая програмата ти смята грешно тъй като ти ги изключваш и после се натрупва грешка
- { // Тези две условия трябва да бъдат премахнати и директно да започнеш с for цикъла който започва от else при теб
- Console.WriteLine("OddSum = 0");
- Console.WriteLine("OddMin = No");
- Console.WriteLine("OddMax = No");
- Console.WriteLine("EvenSum = 0");
- Console.WriteLine("EvenMin = No");
- Console.WriteLine("EvenMax = No");
- }
- else if (count == 1)
- {
- int num = int.Parse(Console.ReadLine()); /// грешка - тук трябва да сложиш double защото така програмата ти прави стъкмистика изключва double число
- Console.WriteLine("OddSum = {0}", num);
- Console.WriteLine("OddMin = {0}", num);
- Console.WriteLine("OddMax = {0}", num);
- Console.WriteLine("EvenSum = 0");
- Console.WriteLine("EvenMin = No");
- Console.WriteLine("EvenMax = No");
- }
- else
- {
- for (int i = 0; i < count; i++) /// 2 грешка - i = 1; i <= count - иначе програмата няма да смята правилно, макар че в твоя случай концептуалната грешка променя всичко
- {
- int num = int.Parse(Console.ReadLine()); /// 1 грешка - това оправя обаче само гърмежите където въобще ти крашва системата тук трябва да сложиш double
- Console.WriteLine("OddSum = {0}", num);
- if (num % 2 == 0)
- {
- evenSum += num;
- if (num < evenMin) evenMin = num;
- if (num > evenMax) evenMax = num;
- }
- else if (num % 2 != 0)
- {
- oddSum += num;
- if (num < oddMin) oddMin = num;
- if (num > oddMax) oddMax = num;
- }
- }
- // 3 грешка - тук отсътства проверка за No - в твоя случай ти си искал разбираемо да я избегнеш, но при промяна на концепцията ще трябва да разгърнеш проверка с if else конструкция
- Console.WriteLine("OddSum = {0}", oddSum);
- Console.WriteLine("OddMin = {0}", oddMin);
- Console.WriteLine("OddMax = {0}", oddMax);
- Console.WriteLine("EvenSum = {0}", evenSum);
- Console.WriteLine("EvenMin = {0}", evenMin);
- Console.WriteLine("EvenMax = {0}", evenMax);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement