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

Составить программу в паскале.даны три положительных числа а,в,с. проверить, могут ли быть они длинами сторон треугольник. если да, то вычислить площадь треугольника. (нужно учитывать, что стороны не могут равняться нулю. и возможно существование равностороннего треугольника) основные формулы: а< =б+с, б

👇
Ответ:
DedPool58PavkaPlay
DedPool58PavkaPlay
01.05.2020

var a,b,c,p:integer;
begin
  writeln('введите a');
   readln(a);
  writeln('введите b');
   readln(b);
  writeln('введите c');
   readln(c);
  if (a<=b+c) and (b<a+c) and (c<=a+b) then
    begin
       p:=(a+b+c) div 2;
       writeln('Треугольник может существовать');
       writeln('Площадь: ', sqrt(p* ((p-a)*(p-b))*((p-c))):1:2);  //Формула герона
    end
  else writeln('Не треугольник');
  readln();
end.

4,4(87 оценок)
Открыть все ответы
Ответ:
amura20
amura20
01.05.2020
А код верный? Судя по тому, что в условии цикла стоит знак <=, цикл будет работать до тех пор, пока i меньше или равно некоторого числа. То есть цикл должен остановиться, когда i станет больше выбранного числа (которое нужно поставить вместо многоточия). Но в цикле стоит операция уменьшения параметра i. То есть i будет только уменьшаться! Цикл будет бесконечным!
Пример 1:
i:=5;
while i<=4 do begin writeln('Привет'); i:=i-1; end;
Цикл не сработает ни разу, т.к. условие с самого начала неверное!
Пример 2:
i:=5;
while i<=5 do begin writeln('Привет'); i:=i-1; end;
Условие верное, программа "заходит в цикл", выполняет вывод текста, а затем уменьшает значение i на 1, т.е. i=4. Далее идет автоматическая проверка условия цикла, и оно снова верное: 4<=5!
Идет снова выполнение всех операторов цикла, и опять уменьшение i на 1, то есть i=3. И снова условие цикла верное: 3<=5!
И так далее. Теперь каждое следующее значение параметра i меньше предыдущего, а значит, и условие цикла всегда верное! Цикл никогда не остановится!
Пример 3:
i:=5;
while i<=6 do begin writeln('Привет'); i:=i-1; end;
И даже если вместо многоточия поставить число более 5, получим аналогичный результат: условие верное, программа "заходит в цикл", выполняет вывод текста, а затем уменьшает значение i на 1, т.е. i=5. Далее идет автоматическая проверка условия цикла, и оно снова верное: 5<=5!
Идет снова выполнение всех операторов цикла, и опять уменьшение i на 1, то есть i=4. И снова условие цикла верное: 4<=5!
И так далее. Теперь каждое следующее значение параметра i меньше предыдущего, а значит, и условие цикла всегда верное! Цикл никогда не остановится!
Возможно, ошибка в условии цикла? Если записать while i>=3 do..., то цикл сработает 3 раза: при i, равном 5, 4, 3. Либо неверно указано действие в цикле: i:=i-1. Если записать i:=i+1, а вместо многоточия поставить i<=7, то цикл также сработает ровно 3 раза, т.к. i будет менять свое значение 5, 6, 7.
4,5(1 оценок)
Ответ:
sofijamikisko
sofijamikisko
01.05.2020
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018
Внимание! Если программа не работает, обновите версию!

begin
  Write('0 1 ');
  var p:=1;
  for var i:=1 to 10 do begin
    p*=2;
    Write(i,' ',p,' ')
    end;
  Writeln
end.

Конечно, можно на каждом шаге вычислять два в нужной степени. Но это глуповатое занятие, поскольку мы видим: следующее значение степени равно удвоенному предыдущему. А начать надо, конечно, от единицы - нулевой степени двойки. Поэтому мы сразу выводим 0 и 1 и засылаем единицу в переменную р, которую потом будем удваивать.
Далее в цикле меняем i от 1 до 10 и для каждого i выводим его значение и через пробел удвоенное значение р.

Нужна в составлении программы , которая выводит таблицу степеней двойки ( от нулевой до десятой ) .
4,7(15 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ