29.05.2011, 18:42 | #1 (permalink) |
Новичок
Регистрация: 29.05.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Задачи по Pascal
2)Дана целая квадратная матрица n-го порядка. Определить, является ли она магическим квадратом, т.е такой, в которой суммы всех элементов во всех строках и столбцах одинаковы. |
29.05.2011, 18:42 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Обратите внимание на похожие проблемы, возможно, что там имеется нужная информация Pascal, две задачи Помогите, пожалуйста, решить три задачи по Pascal |
30.05.2011, 08:48 | #2 (permalink) |
support
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
|
1) в каком формате и как именно хранятся данные в памяти ЭВМ?
2) а в диагоналях?
__________________
Убить всех человеков! |
30.05.2011, 14:29 | #4 (permalink) |
support
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
|
А что, неужели посчитать и сравнить суммы сначала построчно, потом по столбцам - так уж трудно? Считаете сумму элементов первой строки, потом - второй и сравниваете, если равны - переходите к третьей и т.д. Если не равны - выходите из цикла и выдаете сообщение о том, что квадрат не магический
__________________
Убить всех человеков! |
30.05.2011, 15:59 | #5 (permalink) |
Новичок
Регистрация: 29.05.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
буду пробовать
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
30.05.2011, 16:17 | #6 (permalink) |
Новичок
Регистрация: 29.05.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Вот еще задачи:
1)Дана строка. Словом в ней назовем последовательность подряд идущих латинских букв(больших или маленьких). Найти количество слов, начинающихся с буквы А. 2)Дана строка, состоящая из русских слов, набранных заглавными буквами и разделенная пробелами(одним или несколькими). Найти количество слов, которые содержат ровно 3 буквы А. 3)Дан текстовый файл. Записать во второй файл в алфавитном порядке все слова из исходного файла, имеющие заданную длину N. в 1 и 2 не получается правильный подсчет. А вот 3 я вообще не понял |
30.05.2011, 16:40 | #7 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Ну тут как раз помочь легко, поскольку недавно я уже выкладывал решение аналогичной задачи. Единственная разница, что там найденные слова выводились на экран, а Вам надо в другой файл. Надеюсь, что с этим Вы справитесь. А так программа (моя, естественно) полностью отлажена.
Работа с текстовым файлом, Pascal |
30.05.2011, 20:25 | #9 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Код:
VAR S:String; i,N:Byte; Function B(CB:Char):Boolean; begin B:=((Ord(CB)>64) and (Ord(CB)<91)) or ((Ord(CB)>96) and (Ord(CB)<123)); end; BEGIN Writeln('Enter the string:'); Readln(S); If S[1]='A' then N:=1 else N:=0; For i:=2 to Length(S) do If (B(S[i-1])=false) and (S[i]='A') then Inc(N); Writeln('N= ',N); Readln; END. |
|
30.05.2011, 20:55 | #10 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Код:
VAR S:String; i,j,N,NA,i1,i2:Byte; W:Array[1..100] of String; C:Array[1..100] of Byte; BEGIN Writeln('Enter the string:'); Readln(S); i:=0; N:=0; Repeat Repeat Inc(i); Until S[i]<>' '; i1:=i; While (S[i]<>' ') and (i<Length(S)) do Inc(i); If i=Length(S) then i2:=i else i2:=i-1; Inc(N); W[N]:=Copy(S,i1,i2-i1+1); Until i=Length(S); For i:=1 to N do C[i]:=0; For i:=1 to N do For j:=1 to Length(W[i]) do If W[i][j]='А' then Inc(C[i]); NA:=0; For i:=1 to N do If C[i]=3 then Inc(NA); Writeln('The number of words, containing 3 "А" letters, is ',NA); Readln; END. |
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|