Дано целое число. Если оно является положительным, то прибавить к нему 1 ; если отрицательным, то вычесть из него 4; если нулевым, то заменить его на 15. Вывести полученное число. 1. program zadaca;
var
a: integer;
begin
writeln('Введи число a');
readln(a);
if a > =0 then
if a=0 then a:=15 else a:=a+1
else a:=a-4;
writeln(a);
readln;
end.
2. program zadaca;
var
begin
writeln('Введи число a');
readln(a);
if a > =0 then
if a=0 then a:=15 else a:=a+1
else a:=a-4;
writeln(a);
readln;
end.
3. program zadaca;
var
a: integer;
begin
writeln('Введи число a');
readln(a);
if a > =0 then
if a=0 then a:=15 else a:=a+1
else a:=a-4;
end.
1. Ввод (чтение) данных. В любом языке оператор ввода читает текст в виде потока (последовательности) символов, получая их внутренние коды в соответствии с установленной таблицей кодировки. Далее, если эти данные должны быть присвоены, как указано в операторе ввода, числовым переменным, производится выделение последовательностей символов, представляющих собой изображение чисел и осуществляется перекодировка в двоичное представление чисел в соответствии с их типом (целые, с плавающей точкой) и размещение в нужном количестве байтов памяти.
2. Явное преобразование данных путем вызова процедур или функций конкретного языка. Например, в языке Паскаль это делает процедура Str.
3. Неявное преобразование данных, допустимое в некоторых языках, когда в выражении можно смешивать числовые данные и символьные строки, представляющие собой правильное изображение чисел, например 12.5+"3.7".
begin
var n := ReadInteger;
var L := new List<(integer, integer)>;
loop n do
begin
L.Add(ReadInteger2)
end;
var k := L.Count;
L := L.Distinct.ToList; // этап 1
var k1 := L.Count;
Print(k - k1);
(k, k1) := (k1, 0); // этап 2
var St := new Stack<integer>;
var m := L.First[0]; // время
for var i := 1 to k - 1 do
if L[i][0] <= m then
begin
St.Push(i);
Inc(k1)
end
else m := L[i][0];
for var i := 1 to k1 do
L.RemoveAt(St.Pop);
Print(k1);
(k, k1) := (L.Count, 0); // этап 3
m := L.First[1]; // температура
for var i := 1 to k - 1 do
if Abs(L[i][1] - m) > 10 then
begin
St.Push(i);
Inc(k1)
end
else m := L[i][1];
for var i := 1 to k1 do
L.RemoveAt(St.Pop);
Println(k1);
end.
Пример610 58 58 58 512 2513 102 1 1