Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 17.12.2008, 22:58
maksimko maksimko вне форума
Прохожий
 
Регистрация: 17.12.2008
Сообщения: 2
Репутация: 10
По умолчанию пожалуйста,помогите решить.

Здравствуйте,нужна помощь в написании курсовика на Делфи3. Просьба,писать попроще,на уровне студента 1-го курса)
Задание:
Задать с помощью таблицы двумерный массив A[i,j] размером N*M. Вывести значение и пару номеров элемента, которые дальше всего от среднего значения этого массива.

Заранее огромное спасибо!
Ответить с цитированием
  #2  
Старый 17.12.2008, 23:16
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

А где твой код? Или ты хочешь все готовенькое?

Хотя тут делов-то на 10 минут.
Где такие курсовики на 1м курсе (т.е. уже институт) дают???
Я пойду туда учиться!!! Буду появляться за 2 недели до сессии и все быстренько делать!!! И будет мне второй диплом

Общий код примерно такой:
Код:
var
  A : Array Of Array Of Integer; // Ну типа целочисленный.
  N, M : Integer; // Размерность массива.

// Создание массива случайным образом
procedure CreateArray;
var
  I, J : Integer;
begin
  SetLength(A,M); // строки
  For I := 0 To M-1 Do
    SetLength(A[i],N); // столбцы

  // инициализируем случайными числами от 0 до 99
  For I := 0 To M-1 Do
    For J := 0 To N-1 Do
      A[I,J] := Random(100);
end;

// Подсчет среднего арифметического
// Возвращаем целое число для простоты
function GetAverage : Integer;
var
  I, J : Integer;
begin
  Result := 0;
  For I := 0 To M-1 Do
    For J := 0 To N-1 Do
      Result := Result + A[I,J];
  Result := Round(Result / (M * N));
end;

// Коодрдинаты самомго"дальнего" элемента
procedure GetFarElement(Avg : Integer; var X, Y : Integer);
var
  D : Integer;
  I, J : Integer;
begin
  D := -1;
  X := -1;
  Y := -1;
  For I := 0 To M-1 Do
    For J := 0 To N-1 Do
      If Abs(A[I,J] - Avg) > D Then
        Begin
          X := J;
          Y := I;
          D := Abs(A[I,J] - Avg);
        End;
end;

Мог ошибиться где-то в именовании индексов.
А уж как это собрать в одну программу, которая делает то, что тебе надо - думай сам
Ну или дальше уже в платный раздел.
Ответить с цитированием
  #3  
Старый 17.12.2008, 23:31
maksimko maksimko вне форума
Прохожий
 
Регистрация: 17.12.2008
Сообщения: 2
Репутация: 10
По умолчанию

вот код,только не знаю на сколько он правильный,может есть ошибки:
Код:
program Laba3;
   {$APPTYPE CONSOLE}
uses SysUtils, math;
const m=5; n=3;
var MAS: array[1..m, 1..n] of byte;
    min,max: byte;
    i,j, k, o: integer;
    L: real;
begin
 randomize;
 for i:=1 to m do begin
  for j:= 1 to n do begin
   MAS[i,j]:= random(10);
   write(MAS[i,j]:2,' ');
  end;
  writeln;
 end;
 writeln('- - - - -');

 min:=1; max:=1;
 for i:=1 to m do
  for j:=1 to n do begin
   if MAS[i,j]<min then min:=MAS[i,j]; k:=i; o:=j;
   if MAS[i,j]>max then max:=MAS[i,j];
  end;
 L:=(min+max)/2;
 writeln('L = ',L:4:2);
 writeln('min = ',min);
 writeln('max = ',max);
 writeln('InDekSi=', k:2,'  and', o:3 );
 readln;
end.

И курсовики такие в СПБГПУ политех)Зато по начерталке,химии и матану дерут ой как хорошо)

Последний раз редактировалось Admin, 18.12.2008 в 10:13.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 13:49.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025