мне ввести запрос имени и фамилии, по информатике, тема"Операторы и выражения". (Можете от себя какое-нибудь имя написать, ну чтобы это просто было примером)
Так как мы не знаем длину числа и нам надо только первые две цифры, то можно поступить так: 1. Переводим число в строку и выделяем две подстроки символ длиной в 1 с начала строки, которые переводим обратно в целое. 2. А дальше стандартно с целочисленного деления выясняем четность первой цифры числа.
var a,a1,a2:integer; s:string begin readln(a); //преобразуем число в строку и найдем первые 2 цифры str(a,s); a1:=strtoint(copy(s,1,1)); a2:=strtoint(copy(s,2,1)); writeln('Первая цифра числа: ',a1); writeln('Вторая цифра числа: ',a2); //Проверим первую цифру на четность if a1 mod 2 =0 then writeln(a1,' - четная') else writeln(a1,' - нечетная') end.
// PascalABC.NET 3.3, сборка 1634 от 14.02.2018 // Внимание! Если программа не работает, обновите версию!
№1
begin var n:=ReadInteger('n='); var s:=n mod 10; n:=n div 10; var d:integer; while n>0 do (d,n):=(n mod 10,n div 10); s+=d; Writeln('Сумма ',s); if s>10 then Writeln('Верно') else Writeln('Неверно') end.
№2
begin var s:=ReadInteger('n=').ToString; var n:=s.Length; (s[1],s[n]):=(s[n],s[1]); s.Println; if s[n].ToDigit.IsEven then Writeln('Верно') else Writeln('Неверно') end.
№3
begin var n:=ReadInteger('n='); var p:=1; while n>0 do begin var d:=n mod 10; if d.IsOdd then p*=d; n:=n div 10 end; Writeln('Произведение ',p); If p.InRange(100,999) then Writeln('Верно') else Writeln('Неверно') end.
№4
begin var n:=ReadInteger('n='); var k:=0; while n>0 do begin if n mod 10=5 then k+=1; n:=n div 10 end; if k=3 then Writeln('Верно') else Writeln('Неверно') end.
№5
begin var n:=ReadInteger('n='); var k:=1; Writeln('Делители: '); for var i:=1 to n div 2 do if n mod i=0 then begin Print(i); k+=1 end; Writeln(n); if k.IsEven then Writeln('Верно') else Writeln('Неверно') end.
1. Переводим число в строку и выделяем две подстроки символ длиной в 1 с начала строки, которые переводим обратно в целое.
2. А дальше стандартно с целочисленного деления выясняем четность первой цифры числа.
var a,a1,a2:integer;
s:string
begin
readln(a);
//преобразуем число в строку и найдем первые 2 цифры
str(a,s);
a1:=strtoint(copy(s,1,1));
a2:=strtoint(copy(s,2,1));
writeln('Первая цифра числа: ',a1);
writeln('Вторая цифра числа: ',a2);
//Проверим первую цифру на четность
if a1 mod 2 =0 then writeln(a1,' - четная')
else writeln(a1,' - нечетная')
end.