Помощь - Поиск - Пользователи - Календарь
Полная версия: Таблица Пифагора
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
SkyRideR
Задача состоит в том, чтобы создать прогу которая выводит на экран квадрат Пифагора - таблицу
умножения для 14 с\с. Я тут написал что мог, но у меня не соответсвие типов идёт. Если не трудно прошу помочь




var
ckl, ckl2 :integer;
z:array[1..10,1..10] of integer;
function FromDec(n, radix:longint):string;
var
s: String;
const
digit: string[16]='0123456789ABCDEF';
begin
s:='';
repeat
s:=digit[(n mod radix)+1]+s;
n:=n div radix;
until n=0;
FromDec:=s;
end;
function ToDec(n:string; radix:longint):longint;
var
m, i: longint;
const
digit: string[16]='0123456789ABCDEF';
begin
m:=0;
while (n[1]='0') and (length(n) > 1) do delete(n,1,1);
for i:=1 to length(n) do m:=m*radix+pos(n[i],digit)-1;
ToDec:=m;
end;
begin
for ckl:=1 to 10 do begin
for ckl2:=1 to 10 do begin
z[ckl,ckl2]:= FromDec((todec(ckl,ckl2, 14), 14);
end;
end;
for ckl:=1 to 10 do begin
for ckl2:=1 to 10 do begin
write(z[ckl,ckl2], ‘ ‘);
end;
writeln;
end;
writeln(FromDec(ToDec(5,5));
end.
volvo
В основной программе достаточно написать:
begin
  for ckl:=1 to todec('10', 14) do begin
    for ckl2:=1 to todec('10', 14) do
      write(FromDec(ckl*ckl2, 14):4);
    writeln;
  end;
end.
(описание массива Z тоже не нужно) - и получишь таблицу умножения...
HTML
Pascal указывает на write(FromDec(ckl*ckl2, 14):4); в основной программе и пишет ошибку 89: ")" expected.
Что ему не нравится?
volvo
Цитата
Что ему не нравится?
Не знаю... У меня все нормально компилируется. Какая версия Паскаля?
HTML
Цитата
Какая версия Паскаля?

7.0

На всякий случай выложу полную версию того, что получилось:

Program Pifagor;
Var
   ckl , ckl2 : Integer;
   z          : array[1..12,1..12] of Integer;

Function FromDec (n , radix : Longint) : String;
 Var
  s : String;
 Const
  digit : string[12]='0123456789ABC';
 Begin
  s:='';
  repeat
   s:=digit[(n mod radix)+1]+s;
   n:=n div radix;
  until n=0;
  FromDec:=s;
End;

Function ToDec (n : String; radix : Longint) : Longint;
 Var
  m , i : Longint;
 Const
  digit : string[12]='0123456789ABC';
 Begin
  m:=0;
  while (n[1]='0') and (length (n) > 1) do delete (n,1,1);
  for i:=1 to length(n) do m:=m*radix+pos(n[i], digit)-1;
  ToDec:=m;
End;

Begin
   For ckl:=1 to ToDec('12', 12) do begin
      for ckl2:=1 to ToDec('12', 12) do
         while (FromDec(ckl*ckl2,12):4);
      writeln;
   end;

   readln;
End.
volvo
Там вообще-то не while, а write blink.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.