Loading...
Denislava91 avatar Denislava91 5 Точки

Programming Basics C# /Прости операции. Допълнително упражнение.

Здравейте:)

Имате ли представа откъде мога да намеря отговорите на допълнителното упражнение на Прости операции и пресмятания?

Изобщо тези задачи ще ги гледаме ли в клас?

Ако някой е успял да реши от 5 до 9та задача, може ли да сподели решения?

Много ще съм благодарна.

Поздрави.

Денислава

Тагове:
0
Programming Basics with C#
kkaraivanov avatar kkaraivanov 486 Точки

Какво по-точно те затруднява и коя задача?

0
Denislava91 avatar Denislava91 5 Точки

Здравей:)

Задачата,която не можах да реша е 5та за учебната зала. Това, което ме затруднява е деленето без остатък т.е. 5/2=2. Поне аз си мисля, че трябва да го използвам в решението, защото при обикновено делене с double, ми изчислява пълната стойност 5/2=2.5. Не мога да използвам int,защото се въвеждат дробни числа на конзолата и ми дава грешка. Тук ще се радвам, ако споделиш пълното решение.

Иначе задача 6та си я реших, но не можах да намеря какво искат да кажат с тази "плаваща запетая". Аз не направих нищо различно при форматирането на крайния резултат и Judge пак ми зачете задачата.

9та задача реших, но получих 90 точки на втората част и не мога да разбера защо. Ето го и кода:

using System;
                    
public class Program
{
    public static void Main()
    {
    
        double celsius=double.Parse(Console.ReadLine());
        
        if(celsius>=26.00)
        {
            Console.WriteLine("Hot");
        }
    else if(celsius>=20.1)
    
    {
    Console.WriteLine("Warm");
    }
        else if (celsius>=15.00)
        
        {
        Console.WriteLine("Mild");
        }
        
        
        else if (celsius>=12.00)
        {
        Console.WriteLine("Cool");
        }
        
        else if(celsius>=5.00)
        {
        Console.WriteLine("Cold");
        
        }
        else
        {
        Console.WriteLine("unknown");
        }
        }
        
        }

        

Това е като цяло.

 

Предварително благодаря за помощта.

Поздрави.

Денислава

0
Borislav_Vulkov avatar Borislav_Vulkov 54 Точки

Здравей,

Нямам възможност да тествам програмата в момента но това което се забелязва е че при въвеждане на стойности над 35 градуса ще се изпише hot а по условие трябва да се изпише unknown. Добави и тази проверка в първия if и би трябвало да проработи. 

   if(celsius>=26.00 && celsius <= 35) 

като цяло в този момент е хубаво да се ползват енумерации но предполагам не си стигнала до там ( няма страно скоро ще се сблъскаш с тях) Ако ти е интересно можеш да ги разгледаш и сега не са нещо много сложно. 

относно задачите - нямам ги решени но мога да ги реша (като се прибера) и да ти шерна решенията?

Иначе евалата цял ден си цъкаш, това е чудесно :)

0
kkaraivanov avatar kkaraivanov 486 Точки

Задача 9:

using System;

namespace WeatherForecast
{
    class Program
    {
        static void Main(string[] args)
        {
            double degree = double.Parse(Console.ReadLine());

            if (degree >= 26.00 && degree <= 35.00)
            {
                Console.WriteLine("Hot");
            }
            else if (degree > 20.00 && degree < 26.00)
            {
                Console.WriteLine("Warm");
            }
            else if (degree >= 15.00 && degree <= 20.00)
            {
                Console.WriteLine("Mild");
            }
            else if (degree >= 12.00 && degree < 15.00)
            {
                Console.WriteLine("Cool");
            }
            else if (degree >= 5.00 && degree < 12.00)
            {
                Console.WriteLine("Cold");
            }
            else
            {
                Console.WriteLine("unknown");
            }
        }
    }
}

Задача 5:

using System;

namespace StudyHall
{
    class Program
    {
        static void Main(string[] args)
        {
            const double loseWorkPosition = 3;

            double heighHall = double.Parse(Console.ReadLine());
            double widthHall = double.Parse(Console.ReadLine());

            double heigh = heighHall * 100;
            double width = widthHall * 100;
            double coridor = 100;
            double workPositionWidth = 70;
            double workPositionHeigh = 120;
            double rest = 0.0;

            //We find bureaus count at one row
            width -= coridor;
            rest = width % workPositionWidth;
            width -= rest;
            double bureauCount = width / workPositionWidth;

            //We find count at rows
            rest = heigh % workPositionHeigh;
            heigh -= rest;
            double rowCount = heigh / workPositionHeigh;

            //We find count work position
            double workPosition = (bureauCount * rowCount) - loseWorkPosition;

            Console.WriteLine(workPosition);
        }
    }
}

Кода си ти го бива, но пестиш писане заради което си направила пропуска. Ако ти трябват зруги решения от бейсик курса, това ми е скайп нейм-а - kostadin.karraivanov.

0
Denislava91 avatar Denislava91 5 Точки

Много благодаря за решенията! В интерес на истината, не се сетих за &&, но нали се учим с питане:) Иначе бих се възползвала от решенията ти , в случай на бъдещи затруднения:)

Благодаря отново:)

Поздрави.

Дени

0
Denislava91 avatar Denislava91 5 Точки

Извинявайте за спама, но тази задача 5та не мога да я реша и това е. Та опитах се да напиша мое решение, но нещо пропускам и не мога да разбера какво. Та, ако можете да ми помогнете. Предварително благодаря!:)

using System;

public class Program

{

public static void Main()

{

double widthHall=double.Parse(Console.ReadLine());

double heightHall=double.Parse(Console.ReadLine());

widthHall=widthHall*100;

heightHall=heightHall*100;

double workPositionWidth=70;

double workPositionHeight=120;

double coridorHeight=100;

double workPositionLost=3;

double rest=0.0;

//Find how many worPositions can have at height

heightHall=heightHall-coridorHeight;

rest=heightHall % workPositionHeight;

double workPositionCountHeight=(heightHall-rest)/workPositionHeight;

//Find how many worPositions can have at width

rest=widthHall % workPositionWidth;

double workPositionCountWidth=(widthHall-rest)/workPositionWidth;

double workPositionTotal=workPositionCountWidth*workPositionCountHeight-workPositionLost;

Console.WriteLine(Math.Round(workPositionTotal));

        }

    }

0
Borislav_Vulkov avatar Borislav_Vulkov 54 Точки

Здравей Дени,
ето едно решение:

namespace TrainingLab
{
    using System;

    public class StartUp
    {
        public static void Main()
        {
            //width of the corridor in m
            const double CorridorWidth = 1;

            //width of a desk in m
            const double DeskWidth = 0.7;

            //height of a desk in m
            const double DeskHeight = 1.2;

            //space for the door and the podium
            const int OccupiedSpace = 3;

            double width = double.Parse(Console.ReadLine());
            double height = double.Parse(Console.ReadLine());

            double rows = Math.Floor((height - CorridorWidth) / DeskWidth);
            double columns = Math.Floor(width / DeskHeight);

            Console.WriteLine(rows * columns - OccupiedSpace);
        }
    }
}

За закръглянето съм използвал Math.Floor(). Това е метод (функция) която закръгля едно дробно число към по-малкото цяло число. Примерно:

int number = Math.Floor(1.12) // number = 1
int number = Math.Floor(1.99) // number = 1

Ако в дадена ситуация ти се налага да закръгляш по стандартния начин можеш да ползваш Math.Round()

int number = Math. Round (1.12) // number = 1
int number = Math. Round (1.99) // number = 2

Ако искаш да закръгляш винаги към по голямото цяло можеш да използваш Math.Ceiling()

int number = Math. Ceiling (1.12) // number = 2
int number = Math. Ceiling (1.99) // number = 2

Има и други интересни неща в класа Math можеш да ги разгледаш (маркираш с мишката даден метод, в случая Math, и натискат F12. Това ще отведе до имплементацията метода/класа).


Надявам се да съм ти бил полезен :)
Поздрави,
Боби

0
Denislava91 avatar Denislava91 5 Точки

Много ти благодаря, Боби!

Нещо наименованията на широчината и дължината на залата и бюрата ме объркват, защото дължината на бюрата са наложени на широчината на залата и обратното. Отделно дължината на залата по условие се казва широчина, което допълнително обърква, а широчината височина, мисля че от там ми идва проблемът.

Определено много ми помогна.

Поздрави.

Дени

0
Denislava91 avatar Denislava91 5 Точки

Благодаря много за помощта. Не се бях сетила за &&, но всъщност е доста логично:)

Благодаря и за решенията, бих се възползвала и от другите решения, в случай на затруднение:)

Поздрави и хубав ден:)

Дени

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