Задачка Задача на кодинг №1

Тема в разделе "Учимся кодить на задачках", создана пользователем X-Shar, 29 сен 2015.

↑ ↓
  1. X-Shar :)
    X-Shar
    Ответить в чате

    Администрация

    Регистрация:
    03.06.2012
    Сообщения:
    5.800
    Симпатии:
    425
    Пол:
    Мужской
    Репа:
    +957 / 152 / -29
    Jabber:
    Skype:
    ICQ:

    638294628

    Всем привет, многие наверное сейчас будут смеяться и назовёте меня дураком (или ламером), но тем не менее решил немного поупражняться на С#, язык си, так-же как С++ мне знаком, НО с технологией нет, что-то вообще не сталкивался...

    Но тем не менее упражняться нужно на каких-то простых задачах, иначе всё быстро забывается ! (ИМХО)

    Так-вот, пока решил поработать с консолью и решать простые задачки на матан, ну и чуть по сложнее...

    Кому интересно присоединяйтесь !

    Также хочется увидеть решения этих задач на других языках например ассемблер, делфи и т.д. :)

    Итак задача №1 (Постарайтесь решить сами, не важно на чём, а потом сверим результат и методику):


    Есть прямоугольный треугольник с катетами (Вводятся в программе пользователем).
    Найдите площадь треугольника, s=?
    Используя теорему Пифагора, найдите длину гипотенузы, с=?
    Кроме этого, найдите длину гипотенузы еще и с помощью теоремы косинусов.
    Угол между катетами, думаю и так понятен, 90 градусов :)

    Формула теоремы косинусов:

    [​IMG]

    Теорему Пифагора, грех не знать...Dmeh-Smeh-Smeh!!!

    Вот моё решение на С# (Ввод с консоли):

    Код:
     static void Main(string[] args)
            {
                
    double katet1katet2//Катеты, можно-будет вводить дробное число
                
    double GipSqr,GipSqr2//Квадрат гипотенузы

                
    double Gip1//Наша гипотенуза по теореме Пифагора
                
    double Gip2//Наша гипотенуза по теореме Пифагора

                
    double S//Наша площадь.


                
    Console.WriteLine("Данная программа вычислит гипотенузу и площадь нашего прямоугольного триугольника...");

                
    Console.Write("Введите первый катет: " );
                
    katet1Convert.ToDouble(Console.ReadLine());

                
    Console.Write("Введите второй катет: ");
                
    katet2 Convert.ToDouble(Console.ReadLine());

                
    GipSqr Math.Pow(katet12) + Math.Pow(katet22); //вычисляем квадрат гипотенузы
                
    Gip1 Math.Sqrt(GipSqr); //Вычисляем нашу гипотенузу по теореме Пифагора...

                
    Console.WriteLine("Гипотенуза по теореме Пифагора: "Gip1); //Выводим результат

                //Теорема косинусов***************************************************************************************************************

                
    GipSqr2 Math.Pow(katet12) + Math.Pow(katet22) - katet1 katet2 Math.Cos(90*Math.PI 180); //Вычисляем квадрат гипотенузы... (90*Math.PI / 180)-Перевод радианы в градусы.
                
    Gip2 Math.Sqrt(GipSqr2); //Вычисляем нашу гипотенузу по теореме косинусов...

                
    Console.WriteLine("Гипотенуза по теореме косинусов: " Gip2); //Выводим результат

                //********************************************************************************************************************************

                
    = (katet1 katet2) / 2//Наша площадь...

                
    Console.WriteLine("Площадь равна: " S); //Выводим результат

                
    Console.ReadKey();

            }

    upload_2015-9-29_14-51-55.

    А теперь перепишите на ассемблере !ogo-go:bagfixbag::Mem10:

    Все задачи в новый раздел:https://ru-sf.ru/forums/uchimsja-kodit-na-zadachkax.138/
     
    Последнее редактирование: 29 сен 2015
    • Мне нравится Мне нравится x 1
    • Информативный пост Информативный пост x 1
  2. Антоха Администратор
    Антоха
    Ответить в чате

    Администрация

    Регистрация:
    26.12.2012
    Сообщения:
    3.174
    Симпатии:
    11.089
    Пол:
    Мужской
    Репа:
    +11.237 / 47 / -6
    Jabber:
    Skype:
    Беда в том,что для того,чтобы поупражняться нужно хоть что-то знать.Convert,Math.Pow,Math.Sqrt..хз

    могу лишь переписать на бумажку и посчитать в столбик...
     
    • Согласен(а) Согласен(а) x 1
  3. X-Shar :)
    X-Shar
    Ответить в чате

    Администрация

    Регистрация:
    03.06.2012
    Сообщения:
    5.800
    Симпатии:
    425
    Пол:
    Мужской
    Репа:
    +957 / 152 / -29
    Jabber:
    Skype:
    ICQ:

    638294628

    Math - Это математический класс стандартный процедур, находится в библиотеке using System;

    В этом классе возведение в корень, в квадрат, можно синус взять...

    Если среда русская, то достаточно написать так Math. и выведется контекстная подсказка какие есть функи...

    В данном случае:

    Math.Pow - Возведение в квадрат;

    Math.Sqrt - Возведение в корень.


    Convert.ToDouble - Это приведение в тип double (Это дробный тип данных), из потока при вводе получается тип "Строка", а функции Math. должны работать с числовыми типами, как-раз по мойму double, даже тип int нужно привадить, иначе компилятор сругается...

    Ладно следующая задача по проще будет... :)

    А вообще нужно-ли тематику развивать ?

    Кстати интересно не только C# !
     
    • Мне нравится Мне нравится x 1

Поделиться этой страницей