Динамическая типизация означает, что во время выполнения программы переменные могут принимать различные значения, например, сначала быть целочисленной, потом строковой, потом натуральной переменной. В языках со строгой типизацией такого сделать нельзя. Программа с самого начала выделяет некоторую область памяти под хранение значения и определяет, что это будет, строка, целое значение или натуральное.
Например, python - это язык с динамической типизацией. В одной программе можно сделать один за другим такие присваивания: а=256 а="кукареку", то есть программа сначала будет хранить в переменной целое число 256, а потом поменяем его на строку "кукареку".
Pascal же язык со строгой типизацией. Для хранения чисел там надо выделить одни переменные, а для хранения строк - другие: var a, b : integer; c : string; begin a:=256; b:=12; c:="hello"
//Как-то громоздко получилось, но я так вижу. Эх, выходные. const n=5; var a:array[1..n] of integer; b:array[0..8] of integer; ar:array[1..n] of integer; i,c,j:integer; begin randomize; writeln('Array:'); for i:=1 to n do begin a[i]:=random(8); write(a[i]:4); end; for i:=1 to n do begin; for j:=0 to 8 do if a[i]=j then inc(b[j]); end; for i:=1 to n do begin; for j:=0 to 8 do if (b[j]>1) and (a[i]=j) then a[i]:=9; if a[i]<>9 then begin; inc(c); ar[c]:=a[i]; end; end; writeln; for i:=0 to 8 do writeln(i,'=',b[i]); writeln; writeln('Final array:'); for i:=1 to n do if a[i]=9 then a[i]:=0;
for i:=1 to c do begin; a[i]:=ar[i]; write(a[i]:4); end; end.
// PascalABC.NET 3.0, сборка 1076 begin var n:=ReadInteger('Число элементов массива='); var a:=ArrRandom(n,-25,25); Write('Исходный массив: '); a.Println; var k:=a.Where(x->sqr(x)>sqr(a[0])).Count; if k>0 then Writeln ('Найдено ',k,' элементов, квадрат которых больше квадрата первого') else Writeln ('Нет ни одного элемента, квадрат которого больше квадрата первого') end.
Тестовое решение: Число элементов массива=15 Исходный массив: 11 12 -11 -3 -16 -22 22 4 -4 -1 -16 -9 -19 4 16 Найдено 7 элементов, квадрат которых больше квадрата первого
Например, python - это язык с динамической типизацией. В одной программе можно сделать один за другим такие присваивания:
а=256
а="кукареку", то есть программа сначала будет хранить в переменной целое число 256, а потом поменяем его на строку "кукареку".
Pascal же язык со строгой типизацией. Для хранения чисел там надо выделить одни переменные, а для хранения строк - другие:
var
a, b : integer;
c : string;
begin
a:=256;
b:=12;
c:="hello"
Вот так.