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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.12.2009, 22:44   #1
Leona180991
 
Аватар для Leona180991
 
Регистрация: 25.12.2009
Сообщений: 6
По умолчанию Матрицы

Ребята посмотрите, что не так в программе. И помогите дописать ее. Само задание: Дана квадратная матрица размером МхМ. Вычислите сумму диагональных элементов. Найдите наименьший и наибольший элементы и подсчитайте их полусумму. Мне осталось подсчитать полусумму, но как это записать не знаю. Вот сама программа:
Код:
Program matrix;
Const n=100;
Var a:array [1..n,1..n] of real;
Begin
For i:=1 to n do
For j:=1 to n do
Begin
Read (a[I,j]);
End;
For i:=1 to n do
Begin
For j:=1 to n do
Write (a[I,j]);
Writeln;
End;
Writeln;
Readln;
End.
Sum:=0;
For i:=1 to n do
Sum:=sum + a[I,i];
End.
min:=a[1,1];
if min>a[i,j] then min:=a[i,j];
End.
max:=a[1,1];
if max<a[i,j] then max:=a[i,j];
End.
И еще нужно привести примеры, т.е. показать как работает матрица. А не знаю какие числа вводить. Помогите, пожалуйста!!!

Последний раз редактировалось Stilet; 03.08.2010 в 08:54.
Leona180991 вне форума Ответить с цитированием
Старый 28.12.2009, 01:50   #2
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

Ну полусумма это складываешь эти два элемента и делишь на 2.
например вводишь матрицу
2 2 4
3 5 6
5 7 8
т.к. минимум здесь 2 а максимум 8( по диагонали). (2+8)/2=5
5 это ответ
Базиля вне форума Ответить с цитированием
Старый 28.12.2009, 21:34   #3
Leona180991
 
Аватар для Leona180991
 
Регистрация: 25.12.2009
Сообщений: 6
По умолчанию

Cпасибо))) Пример пригодился, я наконец разобралась!!! Урааааааа, зачет практически в кармане!!!

Привет всем! Нужна естесственно помощь. Вот такое RGR: Сформировать текстовый файл, содержащий строки исходного файла, встречающиеся в нем один раз. Вывести содержимое файлов на экран. В программе используются подпрограммы.

Смогла сделать прогу, которая копирует строки из 1 файла во 2. но нужен счетчик, который бы отсортировывал одинаковые строки и оставлял по одному образцу. Помогите составить такую процедуру или функцию.
Код:
program primer;                                                              
Var f1,f2:text;                                                               
  i,n:integer;                                                                
  s:string;                                                                   
begin {формируем 1 файл}                                                      
  Assign(f1,'G:\ln.txt'); {устанавливаем связь файловой переменной с физически
  Rewrite(f1); {открываем файл для записи}                                    
  Readln(n); {определеяем количество вводимых строк}                          
  for i:=1 to n do                                                            
  begin                                                                       
    readln(s); {вводим с клавиатуры строки}                                   
    writeln(f1,s); {записываем последовательно строки в файл}                 
  end;                                                                        
  close(f1); {заканч раб с 1 файлом, теперь на диске сущ файл с именем file1.t
                                                                              
 {чтение из первого файла и формирование второго}                             
  Reset(f1); {открываем первый файл для чтения}                               
  Assign(f2,'G:\kp.txt'); {устанав связь 2 файловой переменной с физич файлом}
 Rewrite(f2); {открываем 2 файл для записи}                                  
                                                                            
 {последовательно считываем строки из 1 файла}                               
  While not eof(f1) do                                                        
  begin                                                                       
    Readln(f1,s); {считываем очередную строку из 1 файла}                     
    Writeln(f2,s); {записываем во 2 файл строки}                              
  End;                                                                        
  Close(f1);                                                                  
  Close(f2); {заканчиваем работу с файлами}                                   
                                                                              
  {выводим на экран 2 файл}                                                   
  Writeln;                                                                    
  Writeln('второй файл содержит строки:');                                    
  Reset(f2); {открываем 2 файл для чтения}                                    
  While not eof(f2) do {пока не конец 2 файла}                                
  begin                                                                       
    Readln(f2,s); {считываем очередную строку из файла}                       
    Writeln(s); {выводим строку на экран}                                     
  End;                                                                        
End.

Последний раз редактировалось Stilet; 03.08.2010 в 08:54.
Leona180991 вне форума Ответить с цитированием
Ответ


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

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обращение матрицы методом союзной матрицы dofmat Помощь студентам 6 03.10.2011 15:01
TurboPascal: графы, матрицы смежности и матрицы инцидентности. ulala Помощь студентам 1 03.03.2011 19:28
На главную диагональ матрицы поместить наибольшие элементы этой матрицы mivel Помощь студентам 2 23.12.2009 21:19
Сумма четных элементов матрицы. Произведение элементов 3-го столбца. Минимальный элемент матрицы. renovare Помощь студентам 2 03.07.2009 21:13