• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Помогите пожалуйста составить программу на Паскале с предусловием

  • Автор темы Автор темы Lesca
  • Дата начала Дата начала

Lesca

Ученик
Регистрация
24 Окт 2013
Сообщения
1
Реакции
0
Баллы
0
Помогите пожалуйста составить программу на Паскале с предусловием

1)Составьте программу для определения N!-M! N! = 1*2*3*4*.........*n
2)Вводятся 14 чисел. Определить, сколько среди них положительных (включая 0) и сколько отрицательных. (Числа вводятся в одну переменную в цикле)
3)1. Концентрация хлорной извести в бассейне V м3 составляет 10 г/л. Через одну трубу в бассейн вливают чистую воду со скоростью Q м3/час, через другую трубу с такой же скоростью вода выливается. При условии идеального перемешивания концентрация хлорной извести изменятся по закону C = C0e-Qt/V , где t – время,*** C0 – начальная концентрация. Напечатать таблицу изменения концентрации хлорной извести для интервала времени от 0 до 5 часов с шагом 0,5 часа.
 
1)Составьте программу для определения N!-M! N! = 1*2*3*4*.........*n
Ладно, с этим помогу. Только вот всякие там дебильные указули типа "использовать предусловие" и т.п. это, извините, мимо. Решаю как считаю нужным.
Два варианта.
1. С рекурсивной функцией:
Код:
Var
 N,M:Integer;

Function Fact(p:Integer):Real;
begin
 If p<=1 then Fact:=1 else Fact:=p*Fact(p-1);
end;

Begin
 Write('N= ');
 Readln(N);
 Write('M= ');
 Readln(M);
 Writeln((Fact(N)-Fact(M)):0:0);
 Readln
End.
2. С обычной функцией:
Код:
Var
 N,M:Integer;

Function Fact(p:Integer):Real;
var i:Integer; F:Real;
begin
 F:=1;
 For i:=2 to p do F:=F*i;
 Fact:=F;
end;

Begin
 Write('N= ');
 Readln(N);
 Write('M= ');
 Readln(M);
 Writeln((Fact(N)-Fact(M)):0:0);
 Readln
End.

Что касается остальных двух задач - то это уже полный детский сад. Соблаговолите справиться самостоятельно.
 
Назад
Сверху