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


         

Перевод чисел из римской системы


"IX","V","IV","I"}; char r[20],s[3]; int j,k,n,m=0;

printf("ХпВведите число в римской системе счисления : ");
scanf("%s", r);
for(j=0; j<strlen(r); j++)
for(k=0; k<13; k++) {

n=strlen(sd[k]);
strncpyfs, &r.[j] ,n) ;
s[n]=0;
if(strcmp(s,sd[k])==0)

{ m += nd[k]; j++; k—; } }

printf("\nB арабской системе счисления %s = %d",r,m);
getch(); }

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

{ Перевод чисел из римской системы счисления в арабскую }

program from rome;

const

nd:array [1..13] of integer=(1000,900,500,400,100,

90,50,40,10,9,5,4,1);

sd:array [1..13] of string=('M','CM','D','CD','C',

'XC' , 'L', 'XL', 'X', 'IX1, 'V, 'IV, 'I' ) ; var

r,s:string;

j,k,n,m: integer; begin

m:=0;

write('Введите число в римской системе счисления : ');

readln(r);

J:=l;

while j<=length(r) do begin k:=l;

while k<=13 do begin

n:=length(sd[k]);

s:=copy(r,j,n);

if s=sd[k] then begin

inc(m,nd[k]); inc(j);
dec(k);
end;
inc(k);
end;
inc(j);
end;

writeln('B арабской системе счисления ',r,' = ',m);
readln;
end.

Задание 3.13. Вхождение строки с разрядкой

Строка S2 может входить в более длинную строку S1 в общепринятом смысле, когда непрерывная подпоследовательность символов строки S1совпадает с цепочкой символов S2. Однако возможна и другая ситуация, когда строка S2 входит в строку S1 с разрядкой. При этом символы S2 с равномерным шагом через 1, 2, 3 или более символов встречаются в строке S1.

Например, для строк S1="ABCBEEC" и S2="ABC" имеют место обычное (с нулевым шагом разрядки) вхождение (символы 1, 2 и 3 в строке si) и вхождение с разрядкой в 2 символа (символы 1, 4 и 7 в строке S1).

Составить программу, которая:

  • запрашивает и вводит анализируемые строки S1 и S2;

  • определяет, входит ли строка S2 в S1, выдает шаг разрядки и номера соответствующих позиций в строке si.

    Задача программы — определить все возможные варианты вхождения S2 в S1.

    Содержание  Назад  Вперед





    Forekc.ru
    Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий