Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Pascal] Работа с матрицей


Автор: forward 20.1.2007, 00:26
очень нужно решить 4 задачки. Желательно хоть что то сделать до завтра. вот ссылки
http://www.rgsu.org.ru/files/%cf%f0%ee%e3%f0%e0%ec%ec%e8%f0%ee%e2%e0%ed%e8%e5/%c7%e0%e4%e0%ed%e8%e5/433/433_01.jpg

http://www.rgsu.org.ru/files/%cf%f0%ee%e3%f0%e0%ec%ec%e8%f0%ee%e2%e0%ed%e8%e5/%c7%e0%e4%e0%ed%e8%e5/51_521_522/DSC00016.JPG

http://www.rgsu.org.ru/files/%cf%f0%ee%e3%f0%e0%ec%ec%e8%f0%ee%e2%e0%ed%e8%e5/%c7%e0%e4%e0%ed%e8%e5/51_521_522/DSC00017.JPG

http://www.rgsu.org.ru/files/%cf%f0%ee%e3%f0%e0%ec%ec%e8%f0%ee%e2%e0%ed%e8%e5/%c7%e0%e4%e0%ed%e8%e5/51_521_522/DSC00018.JPG

http://www.rgsu.org.ru/files/%cf%f0%ee%e3%f0%e0%ec%ec%e8%f0%ee%e2%e0%ed%e8%e5/%c7%e0%e4%e0%ed%e8%e5/51_521_522/DSC00019.JPG


Нужно сделать восьмые номера этих задач!!!
ПОМОГИТЕ!!!
Если всё будет хорошо спишемся пивка попьём smile: 

Автор: VaiMR 20.1.2007, 00:56
Собственно тебе нужно в раздел http://forum.vingrad.ru/Vingrad-help-center.html - там программы пишут а тут только советы дают.

Вот первая программка:

Код

uses crt;
const kolelem=5;
type tmatr=array[1..kolelem,1..kolelem] of integer;
var matr:tmatr;

{--------------- проверка симметричности -----------------------------------}
function simmetr(const matr:tmatr;kolelem:integer):boolean;
var i,j:integer;
begin
  for i:=1 to kolelem do
    for j:=1 to kolelem do
      if matr[i,j]<>matr[j,i]
        then
          begin
            simmetr:=false;
            exit;
          end;
  simmetr:=true;
end;
{---------------------------------------------------------------------------}

{--------------- обнуление элементов выше главной диагонали ----------------}
procedure nullmatr(var matr:tmatr;kolelem:integer);
var i,j:integer;
begin
  for i:=1 to kolelem do
    for j:=i+1 to kolelem do
      matr[i,j]:=0;
end;
{---------------------------------------------------------------------------}

{--------------- подсчет суммы элементов ниже главной диагонали ------------}
function summmatr(const matr:tmatr;kolelem:integer):integer;
var i,j,summ:integer;
begin
  summ:=0;
  for i:=1 to kolelem do
    for j:=i+1 to kolelem do
      summ:=summ+matr[j,i];
 summmatr:=summ;
end;
{---------------------------------------------------------------------------}

begin
  clrscr;
  if simmetr(matr,kolelem)=true
    then
      begin
        nullmatr(matr,kolelem);
        writeln('Сумма элементов ниже главной диагонали',
                 summmatr(matr,kolelem));
      end;
  readln;
end.


Добавлено @ 01:01 
Вторая:

Код

function upstr(s:tring):string;
var sbuf:string;
      i:byte;
begin
  for i:=1 to length(s) do
    sbuf:=sbuf+upcase(s[i]);
  upstr:=sbuf;
end;


По-моему проще взять любой учебник по паскалю - там все это будет.

Автор: forward 20.1.2007, 01:28
Цитата(VaiMR @ 20.1.2007,  00:56)
Собственно тебе нужно в раздел http://forum.vingrad.ru/Vingrad-help-center.html - там программы пишут а тут только советы дают.

Вот первая программка:

Код

uses crt;
const kolelem=5;
type tmatr=array[1..kolelem,1..kolelem] of integer;
var matr:tmatr;

{--------------- проверка симметричности -----------------------------------}
function simmetr(const matr:tmatr;kolelem:integer):boolean;
var i,j:integer;
begin
  for i:=1 to kolelem do
    for j:=1 to kolelem do
      if matr[i,j]<>matr[j,i]
        then
          begin
            simmetr:=false;
            exit;
          end;
  simmetr:=true;
end;
{---------------------------------------------------------------------------}

{--------------- обнуление элементов выше главной диагонали ----------------}
procedure nullmatr(var matr:tmatr;kolelem:integer);
var i,j:integer;
begin
  for i:=1 to kolelem do
    for j:=i+1 to kolelem do
      matr[i,j]:=0;
end;
{---------------------------------------------------------------------------}

{--------------- подсчет суммы элементов ниже главной диагонали ------------}
function summmatr(const matr:tmatr;kolelem:integer):integer;
var i,j,summ:integer;
begin
  summ:=0;
  for i:=1 to kolelem do
    for j:=i+1 to kolelem do
      summ:=summ+matr[j,i];
 summmatr:=summ;
end;
{---------------------------------------------------------------------------}

begin
  clrscr;
  if simmetr(matr,kolelem)=true
    then
      begin
        nullmatr(matr,kolelem);
        writeln('Сумма элементов ниже главной диагонали',
                 summmatr(matr,kolelem));
      end;
  readln;
end.


Добавлено @ 01:01 
Вторая:

Код

function upstr(s:tring):string;
var sbuf:string;
      i:byte;
begin
  for i:=1 to length(s) do
    sbuf:=sbuf+upcase(s[i]);
  upstr:=sbuf;
end;


По-моему проще взять любой учебник по паскалю - там все это будет.

СПАСИБО ОГРОМНОЕ!!!
Больше не в силах? smile 

Автор: Fighter 20.1.2007, 01:30
VaiMR, там вроде написано что должна быть модульная структура программы, а ты в один файл все пихаешь.

Автор: sergejzr 20.1.2007, 02:00
Для домашних заданий, курсовых, существует "Центр Помощи"

Тема перенесена! 

Автор: Kuvaldis 20.1.2007, 02:46

 ! 
Kuvaldis

Грубые нарушения подфорума:
1. Один топик - один вопрос. Создайте для каждой задачи отдельный топик, иначе данная тема будет закрыта.
2. Название темы должно отражать ее суть. Читаем правила раздела вверху страницы!


Автор: VaiMR 20.1.2007, 03:44
Цитата(Fighter @ 20.1.2007,  01:30)
VaiMR, там вроде написано что должна быть модульная структура программы, а ты в один файл все пихаешь.

Ну модуль на такие программы создавать...
Добавить пару строчек...

PS: Не очень внимательно прочитал  smile 

Автор: Fighter 20.1.2007, 04:03
Цитата(VaiMR @  20.1.2007,  03:44 Найти цитируемый пост)
Ну модуль на такие программы создавать...
Добавить пару строчек...


Ну да я согласен, что модуль на такие программы создавать...

Я с этим встречался там где я учусь. А еще там что интересно было, это задание на inc файлы. Типа написать функции для сложения, сравнения и еще чего-то там. И самый прикол, что нужно каждую функцию в отдельный inc файл пихать и потом подключать. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)