16.01.2011, 16:04 | #1 (permalink) |
Новичок
Регистрация: 15.12.2010
Сообщений: 3
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Паскаль, проверочная работа
6.Определить, является ли натуральное число N степенью числа 4 или нет. 7.В приложении 8.Дана квадратная матрица А(n,n).Найти сумму максимальных элементов столбца матрицы |
16.01.2011, 16:04 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Обсуждения которые так или иначе похожи на вашу тему уже встречались, рекомендую вам их просмотреть Паскаль, работа с файлами Турбо Паскаль или Фри Паскаль. Задание по теме Типизированный файл Паскаль. Работа с текстом Работа с датами |
16.01.2011, 16:43 | #2 (permalink) | |
Студент БГПУ
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
|
Цитата:
Код:
var a,b,c:integer; s,p:real; begin write ('a='); readln(a); write ('b='); readln (b); write ('c='); readln(c); p:=(a+b+c)/2; s:=sqrt(p*(p-a)*(p-b)*(p-c)); writeln ('S=',s); readln end. |
|
28.01.2011, 14:03 | #4 (permalink) |
Banned
Регистрация: 25.01.2011
Сообщений: 27
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Последняя задача:
Код:
Var a:array[1..1000,1..1000] of longint; b:array[1..1000] of longint; i,j,n,m,max,v:longint; Begin Writeln('Vvedite storony kvadrata'); {no comment} Readln(n); m:=n; v:=0; Writeln('Zapolnenie massiva'); {no comment} For i:=1 to n do For j:=1 to n do Readln(a[i,j]); max:=a[1,1]; For j:=1 to n do For i:=1 to n do begin if a[j,i]>max Then max:=a[j,i]; If n=m then b[j]:=a[j,i]; end; For i:=1 to j do v:=v+b[i]; Writeln(v:2) ; Readln; End. Последний раз редактировалось Mr.Програмист; 28.01.2011 в 14:09 |
28.01.2011, 15:16 | #5 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Как всегда, полным-полно ошибок.
Значит, сделаем так. Даю Вам 3 дня на то, чтобы отладить программу. Если в течение указанного срока не появится исправленный, отлаженный (оттестированный) вариант, мы с Вами расстаемся. Не обижайтесь, но задача программиста (да-да, это слово пишется с двумя "м") на форуме - помочь, а не продемонстрировать "ай, какой я молодец!". Есть, знаете ли, такое слово - "ответственность". Не попадалось? Так вот - информирую. Это такое чувство, которое есть у всех членов нашего сообщества программистов, причем не только за результаты своего творчества, но и за репутацию форума в целом. |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
29.01.2011, 04:55 | #6 (permalink) |
Banned
Регистрация: 25.01.2011
Сообщений: 27
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Вот исправленно:
Var a:array[1..1000,1..1000] of longint; b:array[1..1000] of longint; i,j,n,m,max,v:longint; Begin Writeln('Vvedite storony kvadrata'); Readln(n); m:=n; v:=0; Writeln('Zapolnenie massiva'); For i:=1 to n do For j:=1 to n do Readln(a[i,j]); max:=a[1,1]; For j:=1 to n do For i:=1 to n do begin if a[i,j]>max Then max:=a[j,i]; If n=m then b[j]:=a[i,j]; end; For i:=1 to j do v:=v+b[i]; Writeln(v:2); End. Запускать на Pascal ABC. Яркий пример "индусского кода" |
29.01.2011, 08:36 | #7 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Не пойдет. Ошибок существенно меньше не стало. Ладно, кое-какие подсказки:
1. (не ошибка, но тем не менее) Вводить двумерный массив "вслепую", не имея на экране подсказок - страшно неудобно. Потрудитесь организовать подсказки, чтобы было ясно, какой элемент вводится. 2. Вы вводите с консоли размерность матрицы n, затем присваиваете параметру m значение этого m (m:=n;) и в дальнейшем ни тот, ни другой параметр не меняются. А потому условие "If n=m then" абсолютно бессмысленно. И вообще, что собой представляет параметр m и зачем он был введен - ведомо только Вам. 3. Путаница с индексами массива A[i,j], A[j,i]. И это еще не полный перечень. Значит, так. Настоятельно рекомендую взять лист бумаги, нарисовать на нем квадратную матрицу размером 3х3, 4х4 или 5х5, заполнив произвольными числами (при этом избегая каких бы то ни было симметрий), далее выписать максимальные значения в столбцах и просуммировать их. Потом запустить программу, ввести в нее матрицу и сверить результат. Проделать это несколько раз для разных матриц разных размеров. И только убедившись в том, что программа всегда выдает правильный ответ, выложить сюда код. А пока перспектива расставания остается в силе. |
30.01.2011, 15:44 | #8 (permalink) |
Banned
Регистрация: 25.01.2011
Сообщений: 27
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Мозги скрипели, выдавали синий экран и кричали остановись, но я зделал её:
Код:
Uses CRT; Var a:array[1..1000,1..1000] of longint; b:array[1..1000] of longint; i,j,n,max,v:longint; Begin Writeln('Введите сторону квадрата'); Readln(n); v:=0; Writeln('Заполнение массива'); For i:=1 to n do For j:=1 to n do Readln(a[i,j]); max:=a[1,1]; For j:=1 to n do For i:=1 to n do begin if a[i,j]>max Then max:=a[i,j]; b[j]:=max; end; For i:=1 to n do v:=v+b[i]; Writeln(v:2); for i:=1 to n do begin for j:=1 to n do begin Write(a[i,j],' '); end; Writeln; end; End. |
30.01.2011, 15:52 | #9 (permalink) | ||
Студент БГПУ
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
|
Mr.Програмист у меня к вам вопрос: Вы программу тестировали?
При запуске программы срузу же ошибка: Цитата:
Цитата:
И для задержки вместо writeln используется readln Последний раз редактировалось shrek=); 30.01.2011 в 16:00 Причина: :) |
||
30.01.2011, 16:06 | #10 (permalink) |
Banned
Регистрация: 25.01.2011
Сообщений: 27
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
МИХА Я ТЕСТИРОВАЛ НА PASCAL ABC И У МЕНЯ ОНА РАБОТАЛА
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|