С Новым годом! Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 22.09.2015
Сообщений: 21
1

Найти все варианты решения 3*x – 2*y+5*z=28 уравнения на отрезке х, у, z [-100;100]

22.09.2015, 16:37. Показов 1380. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Решить с помощью "For"
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.09.2015, 16:37
Ответы с готовыми решениями:

Найти все варианты покупки 100 голов скота
Перед фермером стоит задача: купить на 100 рублей 100 голов скота. Стоимость быка – 10 руб.,...

Найти все возможные варианты получить выражение со значением 100
Имеются цифры от 1 до 9, расположенные по возрастанию (убыванию). Требуется расставить между ними...

Найти все варианты размещения знаков операций +,-,* на месте вопросов в выражении 1?2?3?4?5?6?7?8?9=100
Составить программу, которая бы нашла все варианты размещения знаков арифметических операций +,-,*...

Найти все целые решения уравнения на заданном отрезке
Вводятся 5 чисел: a, b, c, d и e. Найдите все целые решения уравнения ( ax3 + bx2 + cx + d ) / (...

2
908 / 756 / 833
Регистрация: 06.09.2013
Сообщений: 1,561
22.09.2015, 16:56 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
var
  x, y, z: integer;
  
begin
  for x := -100 to 100 do
    for y := -100 to 100 do
      for z := -100 to 100 do
        if 3*x-2*y+5*z=28 then writeln('x=', x, ' y=', y, ' z=', z)
end.
1
5084 / 2655 / 2350
Регистрация: 10.12.2014
Сообщений: 10,048
23.09.2015, 10:11 3
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

А можно обойтись всего двумя циклами:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
begin
  var all := 0;
  for var x := -100 to 100 do
    for var z := -100 to 100 do
      begin
        var y := 3*x+5*z-28;
        if not odd(y) and (y > -201) and (y < 201) then
          begin
            WriteLnFormat('x={0} y={1} z={2}', x, y div 2, z);
            all += 1;
          end;
      end;
  WriteLn('Всего решений: ', all);
end.
Здесь просто вместо 8000000 проверок делается 40000 проверок!

А если бы отрезок был [-100000…+100000], то выигрыш по времени был бы очень заметен…
3
23.09.2015, 10:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.09.2015, 10:11
Помогаю со студенческими работами здесь

Найти все целые решения уравнения ax^3 + bx^2 + cx + d = 0 на отрезке [0,1000] и вывести их в порядке возрастания
Вводятся 4 числа: a, b, c и d. Найдите все целые решения уравнения ax3 + bx2 + cx + d = 0 на...

Вычислить функцию y= cos x для х, изменяющегося на отрезке (-100,100) с шагом 2,5
Вычислить функцию y= cos x для х, изменяющегося на отрезке (-100,100) с шагом 2,5. Сколько раз...

Указатели. Найти количество элементов массива, которые больше 100, меньше 100, равны 100
Разработать функцию,которая находит количество элементов массива,которые больше 100,меньше 100,...

Как найти нужное значение из формулы: 8.39=100/2.6+100/X-100
Здравствуйте люди. Помогите, если можете найти число &quot;х&quot; из формулы: 8.39=100/2.6+100/X-100 ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru