Пайтон
Задача Канаверал. Визначити поведінку космічного апарата, що стартує на екваторі, залежно від його
початкової швидкості V. Як ви знаєте з уроків фізики, тут можливі чотири випадки:
• при V<7,8 км/с апарат впаде на поверхню Землі;
• при 7,8≤V<11,2 км/с апарат стане супутником Землі;
• при 11,2≤V<16,4 км/с апарат стане супутником Сонця;
• при V≥16,4 км/с апарат покине Сонячну систему.
Математическая модель (а также программа; зависит от того, что понимать под этапом формализации).
В учебнике выделяют такие этапы решения задачи на компьютере:
Исходные данные (результат - словесная информационная модель)Формализация (математическая модель)Алгоритмизация (алгоритм)Программирование (программа)Отладка, тестирование (уточнение модели)Выполнение расчетов (получение результатов)Нормальные люди понимают, что после формализации информация должна быть представлена на формальном языке, таких языком может быть как математический, так и язык программирования.
Объяснение:
program Randomizer;
const
RndLimit = 10000;
var
x, SumX : integer;
begin
SumX := 0;
// Коммент: случайное число в паскале всегда генерируется от 0 до заданного но нам необходимо от 1000, поэтому в цикле repeat...until оно будет генерироваться до тех пор, пока не станет > 999
Repeat x := Random(RndLimit) until x > 999;
writeln ('Random X= ', x);
SumX := SumX + (x div 1000) + (x mod 1000 div 100) + (x mod 1000 mod 100 div 10) + (x mod 1000 mod 100 mod 10);
writeln ('Sum = ', SumX);
end.
запускаем
Free Pascal Compiler version 2.6.2-8 [2014/01/22] for x86_64
Copyright (c) 1993-2012 by Florian Klaempfl and others
Target OS: Linux for x86-64
Compiling main.pas
Linking a.out
21 lines compiled, 0.1 sec
Random X= 5488
Sum = 25