Практика программирования (Бейсик, Си, Паскаль)


Задачи, советы и ответы - часть 14


if(s2[j]!=' ') ss2[k++]=s2[j];

ss2[k]=0x0;

k=atrcmp(ss1.ss2) /* Cравнили преобразованные строки */

if(k>0)return 1;

if(k<0)return 1;

return 0;

}

Программа 3_08.pas

program comp_string;

{ Сравнение строк с игнорированием пробелов }

var

s1,s2:string;

function up (a:string):string; var

j:integer; begin

for j:=l to length(a) do

case a[j] of

'a'..'z': a[j] :=chr(ord(a[j])-32) ;

'a'..'n': a[j]:= chr(ord(a[j])-32} ;

'р'..'я': a[j]:= chr(ord(a[j])-80} ;

'ё': a[j]:='E'; end; up:=a; end;

function compare(s1,s2:string):integer;

var

ssl,ss2:string; j:byte;

begin

sl:=up(s1);

s2:=up(s2);

ssl:=' ';

for j:=l to length(s1) do

if sl[j]<>' ' then ssl:=ssl+sl[j];

ss2:=' ';

for j:=l to length(s2) do

if s2[j]<>' ' then ss2:=ss2+s2[j];

compare:=0;

if ssl>ss2 then compare:=1;

if ssl<ss2 then compare:=-!;

end;

begin

writeln('Введите первую строку');

readln(s1);

writeln('Введите вторую строку');

readln(s2);

case compare(s1,s2) of

1: writeln('Первая строка "больше"');

-1: writeln('Первая строка "меньше"');

0: writeln('06e строки равны');

end;

readln;

end.

Задание 3.09. Разноцветный текст

Написать программу, которая выводит на экран текст, меняя цвет букв и цвет фона.

Совет 1 (общий)

В приведенных ниже текстах программ в пределах одного экрана демонстрируются две возможности. Во-первых, выводится строка, все символы которой окрашены в разные цвета. Для этого приходится каждый символ выдавать на экран отдельным оператором, предваряя вывод переустановкой цвета переднего плана. Выбранное для этой цели слово "ПРОГРАММИРОВАНИЕ" содержит ровно 16 букв, но каждый раз при очередной смене цвета фона одна из букв отображаемого слова имеет такой же цвет и не будет видна. Во-вторых, выводится строка, все символы которой имеют одинаковый цвет, не совпадающий с цветом фона. С помощью такой программы можно поэкспериментировать в подборе приятных цветовых сочетаний.

Программа 3_09.bas




- Начало -  - Назад -  - Вперед -