01.07.2009, 02:39 | #1 (permalink) |
Новичок
Регистрация: 01.07.2009
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
PASCAL Помогите решить задачи
помогите решить задачи, на уровне второго курса, без заумных кодов, сохраните каждую задачу в файл PASCAL SAVE и дайте ссылку мне, буду очень благодарен вам! 1 - заполните одномерный массив положительными, расположенными на главной диагонали заданного квадратного массива. выведите полученный массив на экран и найдите произведение элементов. используйте подпрограммы для решения каждой части задачи. 2 - составьте список учебной группы школы юного программиста, включающий N человек. для каждого укажите фамилию, имя, название школы, класс, количество сданных зачетов, оценку за итог экзамена. совокупность данных объединить в файл. составить программу, которая обеспечивает ввод полученной информации. 3 - составить список групп спортсменов легкой отлет. включающий N человек. для каждого указать имя, фамилию, название школы, класс, результат по след дисциплинам: бег 100м, бег 3000м, прыжки в высоту, в длину, с шестом, метание ядра, копья, диска. составить программу, которая обеспечивает ввод полученной информации. 4 - составить список групп спортсменов по плаванию. включающий N человек. для каждого указать имя, фамилию, название школы, класс, результат по след дисциплинам: кроль на груди, на спине, баттерфляй, комплексное плавание. составить программу, которая обеспечивает ввод полученной информации. 5 - составить список по спортивной гимнастике. включающий N человек. для каждого указать имя, фамилию, название школы, класс, результат по след дисциплинам: кольцо, брусья, перекладина, вольные упражнения, прыжки на дорожке, через коня. составить программу, которая обеспечивает ввод полученной информации. буду благодарен, если напишите не очень заумно, прокомментировав, чтобы я смог понять и объяснить преподавателю. |
01.07.2009, 02:39 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Непременно попробуйте прочитать схожие обсуждения Помогите решить задачи на C++ Помогите, пожалуйста, решить три задачи по Pascal |
01.07.2009, 11:00 | #2 (permalink) | |||
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Цитата:
Цитата:
N=8; TYPE AR1=ARRAY[1..N,1..N] of INTEGER; AR2=ARRAY[1..N] of INTEGER; VAR A:AR1; B:AR2; i,j:INTEGER; PROCEDURE Enter_Array(VAR Ae:AR1); {Ввод данных в исходный квадратный массив с использованием генератора случайных чисел; к сожалению, условие задачи сформулировано бестолково, в частности, неясно, являются ли элементы исходной матрицы заведомо положительными числами или среди них могут быть отрицательные и нули, т.е. можно ли просто считывать диагональ или нужно делать выборку; предположим для простоты, что все элементы исходной матрицы - положительные} VAR i,j:INTEGER; BEGIN Randomize; FOR i:=1 TO N DO FOR j:=1 TO N DO Ae[i,j]:=Random(9)+1; END; PROCEDURE DIAGONAL(Ad:AR1; VAR Bd:AR2); {Считывание элементов главной диагонали матрицы в одномерный массив} VAR i:INTEGER; BEGIN FOR i:=1 TO N DO Bd[i]:=Ad[i,i]; END; FUNCTION PRODUCT(Bp:AR2):LongInt; {Нахождение произведения} VAR i:INTEGER; p:LongInt; BEGIN p:=1; FOR i:=1 TO N DO p:=p*Bp[i]; PRODUCT:=p; END; BEGIN Enter_Array(A); Diagonal(A,B); FOR i:=1 TO N DO BEGIN FOR j:=1 TO N DO Write(A[i,j]:2); Writeln; END; WriteLn; FOR i:=1 TO N DO Write(B[i]:2); Writeln; Write('Product = ',PRODUCT(B)); WriteLn; ReadLn; END. Цитата:
N=5; TYPE Reg=RECORD Surname:STRING; Name:STRING; School_Name:STRING; Tests_passed:BYTE; Exam_res:BYTE; END; VAR Pup:ARRAY[1..N] of Reg; i:INTEGER; f:TEXT; BEGIN Assign(f, 'D:\Data.txt'); ReWrite(f); FOR i:=1 TO N DO With Pup[i] DO BEGIN WriteLn('Surname:'); ReadLn(Surname); Write(f, Surname); WriteLn('Name:'); ReadLn(Name); WriteLn(f, ' '+Name); WriteLn('Name of School:'); ReadLn(School_Name); WriteLn(f, 'School: ',School_Name); Write('Number of tests passed? '); Readln(Tests_Passed); Write(f,Tests_Passed:2,' tests passed; '); Write('Final examination result '); Readln(Exam_Res); WriteLn(f,'final examination result ', Exam_Res); Writeln; Writeln(f); END; Close(f); END. Остальные задачи решаются в точности "по образу и подобию" этой - надо лишь менять количество, наименование и типы полей записи. Этой рутинной работой займитесь сами. |
|||
01.07.2009, 12:49 | #3 (permalink) |
Новичок
Регистрация: 01.07.2009
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Огромное спасибо! Вы прям "Express". Без вас бы провалился...
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|