Есть некоторый текстовый файл, который содержит строки. Написать программу для подсчета числа строк, которые:
1) начинаються и оканчиваються одной и той же литерой;
2) состоят из одинаковых литер.
Код программы на паскале:
program ex1;
uses crt;
const space: char = ' ';
var t: text;
s: string;
eq1_count, eq_all_count, k: integer;
begin
clrscr;
eq1_count :=0;
eq_all_count:=0;
assign(t,'file.txt');
reset(t);
while not eof(t) do begin readln(t, s);
while (s[1] = space) and (length(s) > 1 ) do delete(s,1,1);
while (s[length(s)] = space) and (length(s) > 1) do delete(s, length(s), 1);
if s = '' then continue;
if s[1] = s[length(s)] then inc(eq1_count);
k:=1;
while (s[1]=s[k]) and (k<length(s)) do inc(k);
if (k=length(s)) and (k>1) then inc(eq_all_count);
end;
writeln('4uslo strok,na4unayushihsya i zakan4uvayushihsya odnoy i toy ge literoy = ', eq1_count);
writeln;
writeln('4uslo strok, sostoyashih iz odinakovih liter = ', eq_all_count);
repeat until keypressed
end.
Суть программы 2:
Есть некоторое число n (заданное в десятичной системе), которое вводиться с клавиатуры. Необходимо найти его представление в системах отсчета: семеричной,шестнадцатеричной, двоичной.
Код программы на паскале:
program ex2;
uses crt;
const z:array[0..15] of char = ('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
var x,a: integer;
s:string;
begin
clrscr;
writeln('Vvdedite 4uslo v 10-noy sisteme:');
readln(a);
writeln('Vvedite sistemu s4ucleniya:');
readln(x);
s:='';
if a=0 then s:='0' else
if (x<=16) and (x>1) then begin
while a>0 do begin
s:=z[(a mod x)]+s;
a := a div x;
end;
end;
writeln('4uslo v ',x,'-noy sisteme = ', s);
repeat until keypressed
end.
Я бы был признател тому кто смог бы мне переделат эти проги на язык С++.
Заранее благодарю.