Дано натуральное число: а) сколько раз первая цифра встречается в данном числе б)верно ли что данное число начинается на а, а заканчивается на в (цифры а и в вводятся с клавиатуры) — Pascal(Паскаль)

a)

var i,s,k,m:integer;
 
begin
   WriteLn('vvedi chislo i=');
   ReadLn(i);
   s:=i;
   k:=0;
    repeat
      i:=i div 10;
      k:=k+1;
    until i=0;
   m:=1;
    for i:=1 to k-1 do
      m:=m*10;
   m:=s div m;
   i:=0;
    repeat
        if m=s mod 10 then
          i:=i+1;
       s:=s div 10;
    until s=0;
   WriteLn('chislo pervix cifr=',i);
   ReadLn;
end.

б)

var i,k,a,b,s,m:integer;
 
begin
   WriteLn('vvedi chislo i=',' a=',' b=');
   ReadLn(i,a,b);
   s:=i;
   k:=0;
    repeat
      i:=i div 10;
      k:=k+1;
    until i=0;
   m:=1;
     for i:=1 to k-1 do
       m:=m*10;
   if b=s mod 10 then
     if a=s div m then
      WriteLn('chislo nachin.a=',a,' chislo zakan.b=',b)
     else WriteLn('_nepravilno_')
   else
     WriteLn('_nepravilno_');
  ReadLn;
end.

Вариант 2

Program xxx;
Uses Crt;
Var  x,a1,b1:string;
     a,b:string[1];
     k:integer;
Begin
     Clrscr;
     Write('Введите натуральное число = ');readln(x);
     Write('Введите начало = ');readln(a);
     Write('Введите окончание = ');readln(b);
     a1:= copy(x,1,1);
     Repeat
           delete(x,1,1);
            k:=length(x);
     Until k=1;
     b1:=x;
     If (a1=a) and (b1=b)
        then writeln('Совпадают!')
        else Writeln('Не совпадают!');
     readkey;
End.

Вариант 3

Program xxx;
Uses Crt;
Var x,a,b:string;
Begin
Clrscr;
Write('x = ');readln(x);
Write('a = ');readln(a);
Write('b = ');readln(b);
If (a=x[1]) and (b=x[Length(x)])
then writeln('da')
else Writeln('net');
readkey;
End.

Leave a Comment

+ 71 = 72