Loading...
kostadin.ivanov.52 avatar kostadin.ivanov.52 32 Точки

Здравейте, малко помощ за начинаещ ?

Здравейте,

Работя по домашното от втората лекция по C#.

Реших всичко без 13-та задача. Потърсих за евентуално решение в интернет, но явно се издъних и затова реших да се обърна към вас, колеги.

Та въпросите ми са свързани с абсолютно всичко свързано с тази задача ...

Предварително благодаря на тези, които ще благоволят да помогнат и на тези, които нямат такива намерения . И моля, без хейт напълно начинаещ съм ^^

Това е линк към 13-та задача, за да ви улесня.

Edit: Ако има хора, като мен - начинаещи и имат проблем с решението на 14-та задача ,могат да прегледат този линк и да си изяснят повечето от въпросите, които им идват на ум. 

3
Общи приказки
Anonymous:
Duplicate: https://softuni.bg/forum/questions/details/77 and https://softuni.bg/forum/questions/details/43
Aleksiev avatar Aleksiev 133 Точки
Best Answer
Линк и към моето решение, дано да ти е от полза.
1
kostadin.ivanov.52 avatar kostadin.ivanov.52 32 Точки
Браво, много добре си го направил..!
1
svetli0o avatar svetli0o 134 Точки

https://github.com/SvetlioSS/PrimitiveDataTypesAndVariables/blob/master/ComparingFloats/ComparingFloats.cs

Това е моето решение, ако имаш въпроси по него питай. ;)

1
kostadin.ivanov.52 avatar kostadin.ivanov.52 32 Точки
Благодаря за бързият и адекватен отговор. Видях къде и как бъркам. Благодаря :) !
0
Lyubo avatar Lyubo 172 Точки
Погледни тук, има няколко различни решения на задачата.
1
Vacheva avatar Vacheva 154 Точки

Здравей :)

Как подхождам - чета условието и пиша:

От нас се иска да напишем програма за сигурно(винаги точно) сравнение на две double числа, с точност eps = 0.000001. Тъй като примерите са много, а те служат за проверка - пиша кода, така че числата да се въвеждат от конзолата:

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

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

double eps = 0.000001;

Продължавам с четенето: Да се отбележи, че числата с плаваща запетая не могат да се сравняват директно с равенство, а == б.

Приемаме, че те ще са равни ако са по-близо едно до друго, спрямо фиксираната константа (0.000001). Тук е ключа към решението. Т.е. ако (а - б) < 0.000001 или (б - а) < 0.000001. Колегите са ползвали Math.Abs():

bool equality = Math.Abs(a - b) < eps;

И печаташ на конзолата:

Console.WriteLine(equality);


Първото нещо, което правя когато не се справям със задача е

да отворя слайдовете от лекцията. Обикновено там има подобен пример или насоки.

Или отварям книгата на Наков (свалена), темите в книгата са идентични с темите в лекциите - пълно е с примери, обяснения и задачи.

Ако не ми е достатъчно - отварям форума, както и ти си  направил.

Добре е да пускаш темите в съответните категории, за да ти отговорят по-бързо, както и че заглавието на темата ти ще бъде ориентир за останалите. Можеш да погледнеш тук и да се посмееш, и различни решения да видиш.

Поздрави,

Теодора

Edit: След няколко редактирания, видях че отдавна са ти отговорили. Преди редакцията темата беше без отговор. 

4
kostadin.ivanov.52 avatar kostadin.ivanov.52 32 Точки

Няма проблеми, за това, че си отговорила въпреки, че някой ми е предложил възможен начин на решени ! Благодаря ти за обстойният отговор, решението и най-вече за инструкциите :) Ще ми бъдат от полза .smile

1
R.Slavkov951 avatar R.Slavkov951 1 Точки

Здравей,

Ето и моето решение на задачата, надявам се да ти помогне. smile

 

using System;

class ASCItable
{
    static void Main()
    {
        Console.Write("Decimal".PadRight(10));
        Console.Write("ASCII".PadRight(10));
        Console.Write("Hex".PadRight(10));
        Console.WriteLine();

        int min = 0;
        int max = 128;
        for (int i = min; i < max; i++)
        {
            char c = (char)i;

            string display = string.Empty;
            if (char.IsWhiteSpace(c))
            {
                display = c.ToString();
                switch (c)
                {
                    case '\t':
                        display = "\\t";
                        break;
                    case ' ':
                        display = "space";
                        break;
                    case '\n':
                        display = "\\n";
                        break;
                    case '\r':
                        display = "\\r";
                        break;
                    case '\v':
                        display = "\\v";
                        break;
                    case '\f':
                        display = "\\f";
                        break;
                }
            }
            else if (char.IsControl(c))
            {
                display = "control";
            }
            else
            {
                display = c.ToString();
            }
            Console.Write(i.ToString().PadRight(10));
            Console.Write(display.PadRight(10));
            Console.Write(i.ToString("X2"));
            Console.WriteLine();
        }
    }
}

0
Roberto avatar Roberto 56 Точки

Колега,ASCII таблицата е от 255 символа,не от 128.

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