Пример простой программы в Паскаль.

Пример программы на Паскаль. Расчет заработанной платы. Несколько вариантов решения. Оптимизация кода. Попытка усложнения кода.

Очень часто нужно создать программу из реальной жизни. Сейчас у вас достаточно данных для решения. Не используя ничего кроме ввода, обработки и вывода, программа расчета заработной платы получается следующего вида:

[code]
Program MY;
//раздел переменных
Var
day : Integer;
days : Integer;
hour : Integer;
hours: Integer;
tmp : Real;
ndfl : Real;
// главная программа
Begin
Write(‘Введите количество отработанных дней: ‘);
Read(day);
Write(‘Введите тариф за один рабочий час: ‘);
Read(hour);
hours:=day*8;
tmp:= hours*hour;
ndfl:=tmp*0.13;
tmp:=tmp-ndfl;
WriteLn(‘Отработано ‘, hours, ‘ часов.’);
WriteLn(‘Налог ‘,ndfl, ‘ рублей.’);
WriteLn(‘Зарплата ‘,tmp, ‘ рублей.’);
End.
[/code]

Как видно из примера, программа имеет много переменных. Это не оптимизированнный код. На начальном этапе так оно и есть. Я попробую немного оптимизировать программу. Во первых переменная hours не нужна. Избавляюсь от нее. Решение выглядит совсем по другому:

[code]
Program MY;
//раздел переменных
Var
day : Integer;
days : Integer;
hour : Integer;
tmp : Real;
ndfl : Real;
// главная программа
Begin
Write(‘Введите количество отработанных дней: ‘);
Read(day);
Write(‘Введите тариф за один рабочий час: ‘);
Read(hour);
day:=day*8;
ndfl:=day*hour*0.13;
tmp:=(day*hour)-ndfl;
WriteLn(‘Отработано ‘, day, ‘ часов.’);
WriteLn(‘Налог ‘,ndfl, ‘ рублей.’);
WriteLn(‘Зарплата ‘,tmp, ‘ рублей.’);
End.
[/code]

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

1 Star2 Stars3 Stars4 Stars5 Stars (нет рейтинга)
Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.
Оставить комментарий