М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Diana221648
Diana221648
30.08.2020 05:25 •  Информатика

Реализовать программу на с++: Найти произведение целых чисел от m до n, кратных к. С цикла for и с цикла while(или do while). Выбор цикла while или do while зависит от алгоритма, должен быть применён тот цикл, который позволяет получить оптимальный код.

👇
Ответ:
инкар03
инкар03
30.08.2020

Иллюстрации кода и пример вывода прикреплен ниже.

Сам код доступен в виде текста в конце ответа.

В коде определены функции:

is_number_divided_by() - для проверки делимости числа на kget_production_for() - реализация алгоритма вычисления заданного произведения с использованием цикла for.get_production_while() - реализация алгоритма вычисления заданного произведения с использованием цикла while.

========================

Ваши оценки и отзывы лучше оценить качество решения.

Если решение удовлетворило, то не забудь отметить его как "Лучшее".

========================

Код:

#include <iostream>

bool is_number_divided_by(int number, int fr) {

   return number % fr == 0;

}

int get_production_for(int m, int n, int k) {

   int production = 1;

   for (int number = m; number <= n; ++number) {

       if(is_number_divided_by(number, k)) {

           production *= number;

       }

   }

   return production;

}

int get_production_while(int m, int n, int k) {

   int production = 1;

   while (m <= n) {

       if(is_number_divided_by(m, k)) {

           production *= m;

       }

       ++m;

   }

   return production;

}

int main() {

   const int m = 3, n = 7, k = 2;

   std::cout << "Getting production for m=" << m << " n=" << n << " and k=" << k << "..." << std::endl;

   std::cout << "FOR way result is " << get_production_for(m, n, k) << std:: endl;

   std::cout << "WHILE way result is " << get_production_while(m, n, k) << std:: endl;

   return 0;

}


Реализовать программу на с++: Найти произведение целых чисел от m до n, кратных к. С цикла for и с ц
Реализовать программу на с++: Найти произведение целых чисел от m до n, кратных к. С цикла for и с ц
Реализовать программу на с++: Найти произведение целых чисел от m до n, кратных к. С цикла for и с ц
4,4(1 оценок)
Открыть все ответы
Ответ:
danypapajoy8eeo
danypapajoy8eeo
30.08.2020
Заметим, что точка лежит внутри прямоугольника, если min(x2, x3) < x1 < max(x2, x3) и min(y2, y3) < y1 < max(y2, y3) (см. рисунок).
Поэтому поступим так: сначала переставим x2 и x3, чтобы x2 стало меньше x3, потом повторим с y2 и y3, чтобы было y2 < y3. Затем можно проверять, что x2 < x1 < x3 и y2 < y1 < y3.
Точка попадёт на границу, если x1 = x2 или x3, а y1 = y2 или y3. Если оба условия не выполнены, то точка лежит вне прямоугольника.
Код (Паскаль):
var
  x1, y1, x2, y2, x3, y3, temp: real;

begin
  write('Координаты точки: '); readln(x1, y1);
  write('Координаты первой вершины: '); readln(x2, y2);
  write('Координаты второй вершины: '); readln(x3, y3);
  if x2 > x3 then begin
    temp := x2; x2 := x3; x3 := temp;
  end;
  if y2 > y3 then begin
    temp := y2; y2 := y3; y3 := temp;
  end;

  if (x2 < x1) and (x1 < x3) and (y2 < y1) and (y1 < y3) then
    writeln('Точка внутри прямоугольника')
  else if ((x1 = x2) or (x1 = x3)) and ((y1 = y2) or (y1 = y3)) then
    writeln('Точка на границе прямоугольника')
  else
    writeln('Точка вне прямоугольника');
end.

Можно заменить проверки на такие: если min(x2, x3) < x1 < max(x2, x3), то среди разностей x1 - x2 и x1 - x3 одна положительная, а другая отрицательная. Тогда (x1 - x2)(x1 - x3) < 0. Следовательно, можно проверить только, что  (x1 - x2)(x1 - x3) < 0 и (y1 - y2)(y1 - y3) < 0. В случае, когда точка лежит на границе, оба произведения равны нулю.
В моей программе произведения записаны в переменные x1 и y1.
Код (Паскаль):
var
  x1, y1, x2, y2, x3, y3: real;

begin
  write('Координаты точки: '); readln(x1, y1);
  write('Координаты первой вершины: '); readln(x2, y2);
  write('Координаты второй вершины: '); readln(x3, y3);
  x1 := (x1 - x2) * (x1 - x3);
  y1 := (y1 - y2) * (y1 - y3);

  if (x1 < 0) and (y1 < 0) then
    writeln('Точка внутри прямоугольника')
  else if (x1 = 0) and (y1 = 0) then
    writeln('Точка на границе прямоугольника')
  else
    writeln('Точка вне прямоугольника');
end.
Даны числа x1,y,x2,y2,x3,y3.определите лежит ли точка (x1,y1) внутри или вне прямоугольника, стороны
4,6(5 оценок)
Ответ:
tylerxjosh
tylerxjosh
30.08.2020
Панель задач в Windows нужна для удобства работы с папками и приложениями. На ней постоянно отображаются значки открытых программ и папок, и Вы всегда можете быстро переключиться между приложениями. К тому же на панели предусмотрена панель быстрого вызова. Вы сами формируете состав ярлыков в этом разделе, и при работе приложения с полным экраном Вам не придется сворачивать окно для вызова нужной программы, например, калькулятора при работе в Word. А добавив к панелям инструментов наиболее часто используемые при работе папки, Вам вообще не надо выходить на Рабочий стол, панель задач всегда в Вашем распоряжении.
4,6(21 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ