Loading...
Valentin23 avatar Valentin23 2 Точки

Задача Graduation

Във Visual Studio кода работи , но в judge ми дава Runtime Error. Някой може ли да види къде ми е грешката. Благодаря предварително. :)

https://judge.softuni.bg/Contests/Compete/Index/1014#1 Тук е задачата

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp23
{
    class Program
    {
        static void Main(string[] args)
        {
            string name = Console.ReadLine();
            double grade1 = 0;
            double rot = 0;
            while(true)
            {

                double grade = double.Parse(Console.ReadLine());
                
                if (grade < 4 && grade >=2)
                {
                    grade1 =grade1-grade;
                    grade = double.Parse(Console.ReadLine());
                    --rot;  
                    
                }
                if (grade > 6 || grade < 2) break;
                grade1 += grade;
                ++rot;
                if (rot > 12) break;
                if (rot == 12)
                {
                    Console.WriteLine($"{name} graduated. Average grade: {(grade1/12):F2}");
                }
            }
            
        }
    }
}
 

Тагове:
0
Programming Basics
IttyBitty avatar IttyBitty 27 Точки
Best Answer

Правиш излишни проверки като например за оценка 2, брейкове и общо взето усложнения по кода. Ето разгледай моя пример, доста кратък и опростен: https://pastebin.com/uBaScLh3.

За начало въвежам променливите, класа (започва от текущ 1ви) и нулевите общи оценки където да ги начислявам, за да намеря средната обща оценка за печата на изхода. Влизам в цикъл като условието е докато върти до 12ти клас, в if-а проверявам оценката дали е над 4.00 и начислявам класа и новата въведена оценка на ученика и като стигне до 12 си излиза от цикъла, проверявам средния общ успех и печатам.

Късмет! :) 

0
zl.zlatkov avatar zl.zlatkov 44 Точки

Хелоу, 

Ето ти едно решение да си видиш грешките . Успех ;)

https://pastebin.com/K3jTayuX

0
VeselinStoychev avatar VeselinStoychev 14 Точки

Eй това работи при съдията, но ако има проверка за оценки извън рейнджа на 2 --- 6 ще изгърми.

using System;

namespace GraduationTwo
{
    class Program
    {
        static void Main(string[] args)
        {
            string name = Console.ReadLine();
            int counter = 0;
            double gradeSum = 0;
            double excluded = 0;
            bool isExcluded = false;

            while (counter < 12)
            {
                double grade = double.Parse(Console.ReadLine());
                if (grade >= 4)
                {
                    gradeSum += grade;
                    counter++;
                }
                else if (grade < 4)
                {
                    excluded++;
                }
                if (excluded >= 2)
                {
                    isExcluded = true;
                    break;
                }

            }
            if (isExcluded == false)
            {
            double averageGrade = gradeSum / 12;
            Console.WriteLine($"{name} graduated. Average grade: {averageGrade:F2}");
            }
            else
            {
                Console.WriteLine($"{name} has been excluded at {counter + 1} grade");
            }
        }
    }
}

0
silly19 avatar silly19 1 Точки

Wishing you the best of luck for all your blogging efforts.This is my first opportunity to chat this website. I found some interesting things and I will apply to the development of my blog.

 

top cbse school in greater noida

0
gunthergeller avatar gunthergeller 1 Точки

Hello, this works for the adjudicator, yet on the off chance that there is a check for grades outside the scope of 2 - 6 it will detonate.

black friday vpn 2020

0
19/10/2020 09:56:15
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.