Ваше решение записывайте как комментарий к данной странице (пример оформления).
Решены задачи: 1-22, 24,27 Не решены: 23,25,26,28. Для многих задач есть варианты решений с обсуждениями, смотрите.
Задачи
S2.1. Составить программу:
а) вычисления значения функции y=7x2+3x+6 при любом значении x;
б) вычисления значения функции x=12a2+7a+12 при любом значении а.
S2.2. Дана сторона квадрата. Найти его периметр. — решение.
S2.3. Дан радиус окружности. Найти ее диаметр. — решение.
S2.4. Считая, что Земля — идеальная сфера с радиусом R=6350 км, определить расстояние до линии горизонта от точки В с заданной высотой h=AB над Землей.
S2.5. Дана длина ребра куба. Найти объем куба и площадь его боковой поверхности. — решение
S2.6. Дан радиус окружности. Найти длину окружности и площадь круга.
S2.7. Даны два целых числа. Найти: а) их среднее арифметическое; б) их среднее геометрическое.
S2.8. Известны объем и масса тела. Определить плотность материала этого тела.
S2.9. Известны количество жителей в государстве и площадь его территории. Определить плотность населения в этом государстве.
S2.10. Составить программу решения линейного уравнения ax+b=0 (a ≠ 0).
S2.11. Даны катеты прямоугольного треугольника. Найти его гипотенузу.
S2.12. Найти площадь кольца по заданным внешнему и внутреннему радиусам.
S2.13. Даны катеты прямоугольного треугольника. Найти его периметр.
S2.13А. Даны два числа. Найти среднее арифметическое и среднее геометрическое их модулей.
S2.14. Даны основания и высота равнобедренной трапеции. Найти ее периметр.
S2.14А. Даны стороны прямоугольника. Найти его периметр и длину диагонали.
S2.15. Даны два числа. Найти их сумму, разность, произведение, а также частное от деления первого числа на второе.
S2.16. Даны длины сторон прямоугольного параллелепипеда. Найти его объем и площадь боковой поверхности.
S2.17. Известны координаты на плоскости двух точек. Составить программу вычисления расстояния между ними.
S2.18. Даны основания и высота равнобедренной трапеции. Найти периметр трапеции.
S2.19. Даны основания равнобедренной трапеции и угол при большем основании. Найти площадь трапеции.
S2.20. Треугольник задан координатами своих вершин. Найти периметр и площадь треугольника.
S2.21. Выпуклый четырехугольник задан координатами своих вершин. Найти площадь этого четырехугольника как сумму площадей треугольников.
S2.22. Известна стоимость 1 кг конфет, печенья и яблок. Найти стоимость всей покупки, если купили x кг конфет, у кг печенья и z кг яблок.
S2.23. Известна стоимость монитора, системного блока, клавиатуры и мыши. Сколько будут стоить 3 компьютера из этих элементов? N компьютеров?
S2.24. Возраст Тани — X лет, а возраст Мити — Y лет. Найти их средний возраст, а также определить, на сколько отличается возраст каждого ребенка от среднего значения. — решение
S2.25. Два автомобиля едут навстречу друг другу с постоянными скоростями V1 и V2 км/час. Определить, через какое время автомобили встретятся, если расстояние между ними было S км.
S2.26. Два автомобиля едут друг за другом с постоянными скоростями V1 и V2 км/час (V1>V2). Определить, какое расстояние будет между ними через 30 минут после того, как первый автомобиль опередил второй на S км.
S2.27. Известно значение температуры по шкале Цельсия. Найти соответствующее значение температуры по шкале: а) Фаренгейта; б) Кельвина. Для пересчета по шкале Фаренгейта необходимо исходное значение температуры умножить на 1,8 и к результату прибавить 32, а по шкале Кельвина абсолютное значение нуля соответствует 273,15 градуса по шкале Цельсия.
S2.28. У американского писателя-фантаста Рэя Бредбери есть роман «450 градусов по Фаренгейту». Какой температуре по шкале Цельсия соответствует указанное в названии значение? (См. предыдущую задачу).
Пример оформления:
Задача S2.3
static void Main(string[] args) { Console.Write("Введите радиус окружности : "); double r = Convert.ToDouble(Console.ReadLine()); double d = 2 * r; Console.WriteLine("Диаметр окружности = {0}", d); }
Задание S2.2
Дмитрий, по сути, Вы правильно решили задачу.
Вопрос: Что будет, если Вы сделаете ошибку при вводе числа, например, введете 5f ?
при вводе «5f» выдает ошибку. При вводе любой цифры с символом выдает ошибку.
Конечно. Ошибка Runtime в операторе:
float s = Convert.ToSingle(Console.ReadLine());
Но если вместо (или после) него напишите s=5f; — ошибки не будет, ответ будет всегда 20, т.к. переменная типа float.
S2.2.Дана сторона квадрата. Найти его периметр
В.Рычков: Да. Но это только для конкретного а=5!
Таким образом тоже можно решить эту задачу, если вводить a.
Как вам такой вариант решения?
Никита! Зачет. Проверка данных всегда полезна! Для выхода из бесконечного цикла я добавил break; Если ошибка ввода — то повтор, пока не введете число — «обучение бестолкового пользователя» :)
Задание S2.5
Если не проверять на принадлежность введенной строки на число, то все четко. Я бы чуть поправил только в консольном приложении так:
Что значит «проверка на принадлежность введенной строки на число» ?
Если мне нужно задать число в заданном диапазоне, я использую свойство .
Другой вариант — конструкция try-catch .
Или c использованием метода TryParse:
S2.24. Возраст Тани — X лет, а возраст Мити — Y лет. Найти их средний возраст, а также определить, на сколько отличается возраст каждого ребенка от среднего значения.
При публикации комментария пропали знаки «» .
В комментариях совсем не отображаются знаки «больше» , » меньше».
Просто копируйте ваш текст из VS Community и вставьте его в комментарий. Если заметили, то у меня все программные коды — на сером фоне (отформатированный абзац). Их можно копировать и сразу вставлять в свою программу. Проверьте на своем примере (выше).
а не подскажите как решить эту задачу: Задан массив действительных чисел размерности 10х10. Найти суммы
элементов каждой строки, произведения элементов каждого столбца, и максимальный
элемент главной диагонали (подсказка: все элементы, для которых номер строки
совпадает с номером столбца). ?
Иван, смотрите подсказку: https://c-sharp.pro/?p=678#comment-1207
Программисты, можно сделать код Дмитрия задачи S2.24 про Таню и Митю эффективнее?
S2.24. Возраст Тани — X лет, а возраст Мити — Y лет. Найти их средний возраст, а также определить, на сколько отличается возраст каждого ребенка от среднего значения.
Сергей! Структура Вашей программы понятна. Вопрос о типах данных: если разница в 1 год, то чему равно среднее и кто-то старше/младше на 0 лет?
Эд! Ваше решение полное. Ошибок нет.
Полезно то, что разбили задачу на три части.
Задание S2.12 Найти площадь кольца по заданным внешнему и внутреннему радиусам.
Эдуард! Ваше решение неплохое, использовали метод для вычисления площади и методы класса Math.
Правда, оно только справедливо для радиусов 10 и 5. И я еще обычно для возведения в квадрат не использую возведение в степень (умножение выполняется быстрее — без логарифма и экспоненты).
В Вашем стиле более короткий вариант может выглядеть так:
S.2.2.
Как сделать так, чтобы при вводе строкового значения, консоль выводила сообщение об ошибке и просила ввести данные повторно?
Илья! Замечу, что задача S2.2 про периметр квадрата, если Вы ее решали.
Отвечая на Ваш вопрос, предлагаю разобрать статью. Повторный ввод — через цикл do-while.
Спасибо, нашёл ответ на интересующий меня вопрос
S2.6. Дан радиус окружности. Найти длину окружности и площадь круга.
Сергей! Небольшие корректировки в тексте.
S2.7. Даны два целых числа. Найти: а) их среднее арифметическое; б) их среднее геометрическое.
Сергей, зачет.
S2.8. Известны объем и масса тела. Определить плотность материала этого тела.
всегда готов к критике кода)
А вот и критика, что дает Ваша программа:
Введите объем тела 10
Введите массу тела 9
Плотность материала = 0
Должно быть 0,9 !
Причина: m/v вычисляется как результат деления целых чисел, см. матчасть.
S2.11. Даны катеты прямоугольного треугольника. Найти его гипотенузу.
Сергей! Зачет.
S2.1. Составить программу:
а) вычисления значения функции y=7x^2+3x+6 при любом значении x;
б) вычисления значения функции x=12a^2+7a+12 при любом значении а.
VAL! Диалог, да еще на английском, приветствуется.
Для возведения числа в квадрат проще всего написать:
value = value * value;
Спасибо Вячеслав. Вас понял. Отдельно благодарен за исправления.
Создаем метод FormulasComputations() для вычислений по известным формулам. Задачи S2.1-S2.6
S2.1. Составить программу:
а) вычисления значения функции y=7×^2+3x+6 при любом значении x;
б) вычисления значения функции x=12a^2+7a+12 при любом значении а.
S2.2. Дана сторона квадрата. Найти его периметр.
S2.3. Дан радиус окружности. Найти ее диаметр.
S2.4. Считая, что Земля — идеальная сфера с радиусом R=6350 км, определить расстояние до линии горизонта от точки C заданной высотой H над Землей.
S2.5. Дана длина ребра куба. Найти объем куба и площадь его боковой поверхности.
S2.6. Дан радиус окружности. Найти длину окружности и площадь круга.
Вызов метода
VAL ! первые 6 задач Вами также решены.
S2.7. Даны два целых числа. Найти: а) их среднее арифметическое; б) их среднее геометрическое.
Принято.
S2.8. Известны объем и масса тела. Определить плотность материала этого тела.
VAL, а Вы просматривали решения задач, выполненные раньше Вас? Можно не повторять, если решение аналогично, хорошо!
Просматривал конечно. Просто другого решения не имею, а практика для пальчиков необходима. В следующий раз не буду отправлять.
S2.9. Известны количество жителей в государстве и площадь его территории. Определить плотность населения в этом государстве.
Верно. Попутно узнаем и про Ватикан через подсказку.
S2.10. Составить программу решения линейного уравнения ax+b=0 (a ≠ 0).
Принято. Но это было в июне 2020 года.
В декабре получил комментарий от Елены, в котором она справедливо указала на логическую ошибку.
S2.11. Даны катеты прямоугольного треугольника. Найти его гипотенузу.
Принято.
Но можно и в одну формулу:
h = Math.Sqrt(a * a + a * a);
так как умножение выполняется быстрее, чем через Math.Pow(a,2).
По скорости выполнения операций не знал. Спасибо! Хотя мотивом решения через метод Math.Pow, скорее было желание научиться его пользовать. А где можно почитать о скорости выполнения операторов? или это зависит от их приоритетности исполнения?
Две базовые функции — логарифм и экспонента — вычисляются через ряд Тейлора, аналогично sin(x). А вычисление z=xy выполняется, думаю, так:
z=exp(y*ln(x)), где exp() и ln() — методы класса Math.
Простите, но так ничего и не понял где можно почитать о сравнении скорости выполнения операторов и не связана ли она (скорость выполнения) с приоритетностью выполнения в среде CLR?
Для exe-файла будет так: написал для Вас пример — численный эксперимент. Поэкспериментируйте!
S2.12. Найти площадь кольца по заданным внешнему и внутреннему радиусам.
S2.13. Даны катеты прямоугольного треугольника. Найти его периметр.
S2.14. Даны основания и высота равнобедренной трапеции. Найти ее периметр.
S2.15. Даны два числа. Найти их сумму, разность, произведение, а также частное от деления первого числа на второе.
Val, все правильно.
S2.15. Даны два числа. Найти их сумму, разность, произведение, а также частное от деления первого числа на второе.
Да, правильно. Если тип double, то частное = n1 / n2;
S2.16. Даны длины сторон прямоугольного параллелепипеда. Найти его объем и площадь боковой поверхности.
Коротко и ясно.
S2.27. Известно значение температуры по шкале Цельсия. Найти соответствующее значение температуры по шкале: а) Фаренгейта; б) Кельвина. Для пересчета по шкале Фаренгейта необходимо исходное значение температуры умножить на 1,8 и к результату прибавить 32, а по шкале Кельвина абсолютное значение нуля соответствует 273,15 градуса по шкале Цельсия.
VAL, а отрицательные температуры по шкале Кельвина бывают?
А в целом все правильно, зачет.
Температура —273.15 С равна 0 К. Если смогут что-либо охладить ниже -273.15 градусов, вероятно появятся и отрицательные Кельвины. Но скорее передвинут точку абсолютного нуля по шкале.
Юмор понятен про абсолютный нуль, на всякий случай не проверил T < 0 K.
Спасибо!
S2.17. Известны координаты на плоскости двух точек. Составить программу вычисления расстояния между ними.
Val, проверьте у себя скобки. Тест: x1=0, y1=0, x2=3, y2=4. Ожидаемый ответ — 5.
S2.14А. Даны стороны прямоугольника. Найти его периметр и длину диагонали.
Сергей, зачет. А почему ширина не может быть больше длины?
S2.15. Даны два числа. Найти их сумму, разность, произведение, а также частное от деления первого числа на второе.
Сергей! Почему числа не могут быть вещественными (double) и/или отрицательными. Единственное, что стоит проверять, то равно ли нулю второе число.
S2.16. Даны длины сторон прямоугольного параллелепипеда. Найти его объем и площадь боковой поверхности.
Сергей! Зачет.
S2.18. Даны основания и высота равнобедренной трапеции. Найти периметр трапеции.
Зачет.
S2.19. Даны основания равнобедренной трапеции и угол при большем основании. Найти площадь трапеции.
Замысловато. Не учли, что для Sin(x) и Cos(x) угол нужно задавать в радианах. Проверьте такую формулу:
S = (b*b — a*a) tg(x) / 4, где x = angle * Math.PI / 180.
S2.20. Треугольник задан координатами своих вершин. Найти периметр и площадь треугольника.
А периметр?
Задача S 2.5.
Илья, пишите проще и универсальней.
S2.6. Дан радиус окружности. Найти длину окружности и площадь круга.
Правильно, но один оператор лишний.
S2.4.Считая, что Земля — идеальная сфера с радиусом R=6350 км, определить расстояние до линии горизонта от точки с заданной высотой H над Землей.
Илья, неверная формула. Такая же задача С1.11.
S2.7. Даны два целых числа. Найти: а) их среднее арифметическое; б) их среднее геометрическое.
S2.3.Дан радиус окружности. Найти ее диаметр.
Да, верно. Если не проверять ввод. См. выше другие решения.
S2.10. Составить программу решения линейного уравнения ax+b=0 (a ≠ 0).
Верно.
S2.11. Даны катеты прямоугольного треугольника. Найти его гипотенузу.
Верно.
S2.12. Найти площадь кольца по заданным внешнему и внутреннему радиусам.
Задача S2.14 Даны основания и высота равнобедренной трапеции. Найти ее периметр.
Руслан!
Перевыполнение задания приветствуется! Но: 1) ошибка в формуле для вычисления боковой стороны трапеции; 2) среднюю линию надежнее найти как полусумму оснований. Вот тест для Вас: 4, 2, 8. Должен быть ответ: 2,8,5,20,20,5.
S2.21. Выпуклый четырехугольник задан координатами своих вершин. Найти площадь этого четырехугольника как сумму площадей треугольников.
Решение задачи (без проверок):
Павел, принято.
Но я обычно вместо:
пишу, не используя Pow() и Abs():
S2.22. Известна стоимость 1 кг конфет, печенья и яблок. Найти стоимость всей покупки, если купили x кг конфет, у кг печенья и z кг яблок.
Решение задачи:
Принято.
S 2.25 Два автомобиля едут навстречу друг другу с постоянными скоростями V1 и V2 км/час. Определить, через какое время автомобили встретятся, если расстояние между ними было S км.
Решение подробное и верное.
Использование типа decimal допустимо, но хватило бы и double.
S2.10 Комментарий к решению VAL этой задачи. Не верно реализована логика алгоритма. Должно быть так:
Елена, отлично! Пропустил сначала, смотрите комментарий к его июньскому решению с Вашей подачи.
Позже был другой вариант решения другим автором.
S2.23 Известна стоимость монитора, системного блока, клавиатуры и мыши. Сколько будут стоить 3 компьютера из этих элементов? N компьютеров?
Герман! Неплохо, что Вы думаете в стиле ООП. Конкретная задача с тем же функционалом решается, правда, проще. Применяйте KISS-принцип, не усложняйте сущность без необходимости. Есть вопросы — пишите.
S2.4. Считая, что Земля — идеальная сфера с радиусом R=6350 км, определить расстояние до линии горизонта от точки с заданной высотой H над Землей.
А будет ли верным такое решение? а то для меня почти все задачи кажутся сложные т.к в школе геометрии не было да и половину алгебры пропустил(
Денис, нет!
Сначала геометрия (постановка задачи — добавил рисунок в условие задачи), потом реализация (программа).
Расстояние BG найдите по теореме Пифагора.