Тема: Procedure
Допоможіть з програмкою, будь ласка.
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → Pascal/Delphi → Procedure
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
«Допоможіть з програмкою» і «напишіть за мене все» — не одне й те ж 
Я не знаю куда і як записати процедуру
Викладайте код не в вигляді скріншотів, а як текст, виділивши його тегом [code][/code].
Опис процедури можна розмістити після оголошення змінних перед begin основної програми.
Її виклик — у тілі основної програми (тобто, десь між begin та end). 
Не дуже розумію, що собою символізують літери К в завданні (це трикрапки так відобразились?) Очевидно, процедура має отримувати параметр-змінну типу array[1..8][1..8] of integer (точніше, цей тип треба попередньо описати в секції type) й параметр x зі списком вхідних коефіцієнтів. Тобто, має бути приблизно так:
type
     matrix=array[1..8, 1..8] of integer;
     vector=array[1..8] of integer;
//оголошення змінних основної програми
procedure fill(var m:matrix; x:vector); 
    //оголошення локальних змінних процедури
    begin
    //тіло процедури
    end;
begin
//тіло основної програми
end.
beginPS Перепрошую, давно не писав на паскалі. Виправлення в рядку 2 — двовимірні масиви оголошуються так
Там в умові замість К має бути крапка.
type
     matrix=array[1..8] of integer;
     vector=array[1..8] of integer;
//оголошення змінних основної програми
begin 
procedure fill(var x:matrix; y:vector); 
    //оголошення локальних змінних процедури
    var
    i,j,n:integer;
    begin
    //тіло процедури
      for i:=1 to 8 do
  begin 
    read(x[i]);
    y[i] :=1;
    end;
 
begin
//тіло основної програми
 
    for i := 1 to 8 do
    begin
      for j:=1 to 8 do 
      begin 
        y[j] :=y[j] * x[i];
        write(y[j]:6:2, '')
      end;
      end;
      writeln('');
    
      readln;
end;
end.Чого не PascalABC не робить?
Але дуже гарно дякую!!!!!!!!!!!
Чого не PascalABC не робить?
Якщо хочете, щоб вам допомогли - розписуйте проблему конкретно. "Не робить" - це коли у вас в районі електрику вимкнули. Конкретно - які повідомлення про помилки, на якому рядку? З імовірністю 80% просто складання такого питання призведе вас до відповіді самостійно.
Ви не зрозуміли ідею. У процедурі має бути не ввід даних з клавіатури (це можна зробити в основній програмі), а заповнення двовимірного масиву обчисленими значеннями. Крім того, ви її ніде не викликаєте, а через чортзна-як розміщені begin та end у неї потрапило й тіло програми. І зробіть щось із відступами.
Має бути щось таке:
type
     matrix=array[1..8, 1..8] of integer;
     vector=array[1..8] of integer;
//оголошення змінних основної програми
var
    i,j: integer;
    y:matrix;
    x:vector;
 
procedure fill(var y:matrix; x:vector); 
    //оголошення локальних змінних процедури
    var
    i,j,n:integer;
    begin //тіло процедури
        for i := 1 to 8 do
        begin
          for j:=1 to 8 do 
          begin 
        y[i,j] :=y[i,j] * x[i];//тут доробите самі
          end;
           end;
    end;
     
begin //тіло основної програми     
   //ввід:
    for i:=1 to 8 do
      begin 
        read(x[i]);
        //y[i] :=1; - цей рядок зайвий
          end;
          
    fill(y,x);//виклик процедури
    
    //вивід:
    for i := 1 to 8 do
        begin
          for j:=1 to 8 do 
          begin 
        write(y[j]:6:2, '')
          end;
          writeln('');
        end;
     readln;
end.Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися