Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2015, 10:33   #1
Смокер1994
Новичок
Джуниор
 
Регистрация: 22.01.2015
Сообщений: 1
По умолчанию Помогите завтра экзамен))) где ошибки?

Всем привет. Кто поможет есть задание и программа уже кто поможет найти ошибки?) ( 3 задачи и 3 программы):
1.Напишите программу, определяющую число слов в строке. Одно слово от другого отделяется одним пробелом.
Код:
Var str:string;
  i, count:integer;
Begin
  Write ('Строка');
  Readln (str);
   If i>0 then
  Count:= 1;
  Write I>0 do begin
  If str [i] =’ ‘ then
  count:=count+1;
  i:= i-1;
end;
end
  else
  count:=0;
  Writeln (‘Число слов:’ , count);
  Readln;
End.
2.Напишите программу, состоящую из трех процедур и основной программы. Первая процедура организует ввод двух целых чисел X и Y, вторая проверяет их сумму, третья выводит результат. Используйте эти процедуры в основной программе. Используйте X и Y как глобальные переменные.
Код:
Var
  Sum,x,y: integer;
  Procedure Read X and Y ();
Begin
  Read (x,y);
End;
  Procedure sum X and Y ();
Begin
  sum x+y;
end;
  Procedure  Result();
Begin
  writeln (‘X=’,x);
  writeln (‘Y=’,y);
  writeln (‘x+y=’ , sum);
end;
            begin
  read X and Y ();
  Sum X and Y ();
  Result ();
End
3.Составьте программу, проверяющую, образуют ли элементы двумерного массива магический квадрат ( в магическом квадрате суммы чисел по всем вертикалям, всем горизонталям и двум диагоналям.
Код:
Var
  A:array of array of world;
  I,j,n: byte;
  Sum si, sj: longint;
  F: Boolean
Begin
  Write(‘Введите  порядок матрицы’);
  Readln (n)
  Setlenght (a,n,n);
  Writeln (‘Введите элементы матрицы’);
  Si:=0;
  Sj:=0;
  For i:=0 to n – 1 do
  For j:=0 to n-1 do
Begin
  Write(‘A[ ‘, i+1‘, ‘, j+1,  ‘] ‘);
  Readln(a[i;j]);
  If i=j then
  Sl:=si+a[i;j];
  If i=n-j-1 then
  Sj:=sj+q [i;j];
End;
  F:=si=sj;
  Sum:=si;
  I:=0;
  While f and (i<n) do
  Begin
  Si:=0;
  Sj:=0;
  For j=0 to n-1 do
Begin
  Si:=si+a [i,j];
  Sj:=sj+a [j,i];
            End;
  F:= (si=sum) and (sj=sum);
              Irc (i)
           End;
             Write(‘Введенная матрица’);
             If not then
             Write (‘не’);
             Writeln (‘Является магическим квадратом’);
             Readln;
         End.

Последний раз редактировалось Stilet; 22.01.2015 в 10:43.
Смокер1994 вне форума Ответить с цитированием
Старый 22.01.2015, 10:42   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

В первой программе считают пробелы, а не слова. Соответственно если составить строку из 10 пробелов, то получится 10 слов. Хотя в реальности ни одного.
Во второй программе Вы вообще перешли на вольный литературный стиль. Имя процедуры не может содержать пробелы.
Код:
Procedure Read X and Y ();
Что это еще за свободная речь ?
Код:
Procedure ReadXandY ();
Просто как вариант, но тогда любое упоминание процедуры следует изменить на соответствующее и так со всеми остальными полностью аналогично.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 22.01.2015 в 10:45.
Utkin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите решить задачи завтра квалификационный экзамен Виталий12132112 Паскаль, Turbo Pascal, PascalABC.NET 4 26.12.2013 22:17
Помогите написать программу, завтра экзамен(( fiero Общие вопросы C/C++ 5 22.06.2009 21:25
Помогите решить задачу, завтра Экзамен! (assembler) Moower Помощь студентам 1 06.06.2009 13:41
ПОМОГИТЕ......ЗАВТРА ЭКЗАМЕН!!!!!! Allen Iverson Помощь студентам 0 23.04.2009 20:33
Пожалуйста помогите завтра экзамен!!! muha Паскаль, Turbo Pascal, PascalABC.NET 0 14.01.2009 01:43