Необходимо перевести задачу с С++ на Paskal с разъясненьем ( дорого
Необходимо перевести задачку с С++ на Paskal с изъяснением ( дорого )
include
using namespace std;
bool isletter(char c)
return c == 'A'
c == 'B'
c == 'C'
c == 'E'
c == 'H'
c == 'K'
c == 'M'
c == 'O'
c == 'P'
c == 'T'
c == 'X'
c == 'Y';
int main()
int n;
cin gt;gt; n;
for (int i = 0; i lt; n; ++i)
string s;
cin gt;gt; s;
if (s.length() == 6
amp;amp; isletter(s[0])
amp;amp; isdigit(s[1])
amp;amp; isdigit(s[2])
amp;amp; isdigit(s[3])
amp;amp; isletter(s[4])
amp;amp; isletter(s[5]))
cout lt;lt; "Yes";
else
cout lt;lt; "No";
cout lt;lt; endl;
return 0;
function isletter (c : Char) : boolean;
begin
case c of
'A': isletter := true;
'B': isletter := true;
'C': isletter := true;
'E': isletter := true;
'H': isletter := true;
'K': isletter := true;
'M': isletter := true;
'O': isletter := true;
'P': isletter := true;
'T': isletter := true;
'X': isletter := true;
'Y': isletter := true;
else
isletter := false;
end;
end;
function isdigit(c:char):boolean;
begin
IsDigit:=c in ['0'..'9']
end;
var
n : integer;
i : integer;
s : string;
begin
readln(n);
for i := 1 to n do
begin
readln(s);
if (length(s) = 6) and (isletter(s[1])) and (isdigit(s[2])) and (isdigit(s[3])) and (isdigit(s[4])) and (isletter(s[5])) and (isletter(s[6])) then
writeln('Yes')
else
writeln('No');
end;
end.
Чего изъяснять та?) Переписал все точь в точь за исключением того, что в free pascal вроде как нет интегрированной функции проверки char на цифра ли и пришлось писать самому. + Мне не оч норов реализация isletter. Стремная, но так было в спрайтах, так что я молчу.
-
Вопросы ответы
Статьи
Информатика
Статьи
Математика.
Физика.
Математика.
Разные вопросы.
Разные вопросы.
Математика.
Разные вопросы.
Математика.
Физика.
Геометрия.