Пример:
Program gg;
var s,i:integer;
begin
s:=0;
for i:=1 to 5 do
s:=s+i;
writeln(s);
end.
В алгоритме выполняются три операции.
1. Присваивание s:=0;
2. И две операции в цикле: присваивание и сложение
Суммарное число выполняемых операций = 5*2+1. (11)
Время выполнения алгоритма будет пропорционально 5*2+1 (11)
В этом случае говорят, что временная сложность алгоритма зависит линейно от объема данных. Если данных станет в 2 раза больше, и времени на их обработку понадобится в 2 раза больше. Если данных станет больше в 10 раз, и время увеличится в 10 раз.
Задание 1. Оцените временную сложность алгоритма вычисления факториала (произведения) целого положительного числа. Значение x вводится с клавиатуры.
Program gg;
var m, i, x,f: Integer;
begin
m:=1;
readln(x);
for i:=2 to x do
m:=m*i;
F:=m;
writeln(f);
end.
117
422
Ответы на вопрос:
3x - 2
Объяснение:
Program gg;
var m, i, x,f: Integer;
begin
m:=1;
readln(x);
for i:=2 to x do
m:=m*i;
F:=m;
writeln(f);
end.
В алгоритме выполняются четыре операции.
1. Присваивание m:=1
2. И три операции в цикле: присваивание, умножение и присваивание
Суммарное число выполняемых операций = 3*(x - 2 + 1) + 1 = 3(x-1)+1 = 3x - 3 + 1 = 3x - 2
Время выполнения алгоритма будет пропорционально 3x - 2
Var i,s,m: integer; begin for i : = 1000 to 9999 do begin if (i div 10 mod 10 = 2) and (i div 100 mod 10 = 2) then begin s: =s+i; m: =m+1; end; end; writeln('сумма-',s,' кол-во-',m); end.
Популярно: Информатика
-
Ijorik10.01.2023 12:31
-
Доминика2123321.09.2022 12:24
-
alena170611.04.2020 06:03
-
dan4ikqwerty22.06.2020 12:18
-
опалссио26.04.2022 18:06
-
vladkanter22.01.2023 06:37
-
Танюха141008.02.2021 07:48
-
Яна578922.01.2023 10:55
-
omsbksrj06.03.2023 20:54
-
Еля2422.05.2020 13:00