Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 01.07.2009, 02:39   #1 (permalink)
TPYII
Новичок
 
Регистрация: 01.07.2009
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Smile PASCAL Помогите решить задачи

я студент второго курса, нужно получить зачет по практике.
помогите решить задачи, на уровне второго курса, без заумных кодов, сохраните каждую задачу в файл PASCAL SAVE и дайте ссылку мне, буду очень благодарен вам!

1 - заполните одномерный массив положительными, расположенными на главной диагонали заданного квадратного массива. выведите полученный массив на экран и найдите произведение элементов. используйте подпрограммы для решения каждой части задачи.

2 - составьте список учебной группы школы юного программиста, включающий N человек. для каждого укажите фамилию, имя, название школы, класс, количество сданных зачетов, оценку за итог экзамена. совокупность данных объединить в файл. составить программу, которая обеспечивает ввод полученной информации.

3 - составить список групп спортсменов легкой отлет. включающий N человек. для каждого указать имя, фамилию, название школы, класс, результат по след дисциплинам: бег 100м, бег 3000м, прыжки в высоту, в длину, с шестом, метание ядра, копья, диска. составить программу, которая обеспечивает ввод полученной информации.

4 - составить список групп спортсменов по плаванию. включающий N человек. для каждого указать имя, фамилию, название школы, класс, результат по след дисциплинам: кроль на груди, на спине, баттерфляй, комплексное плавание. составить программу, которая обеспечивает ввод полученной информации.

5 - составить список по спортивной гимнастике. включающий N человек. для каждого указать имя, фамилию, название школы, класс, результат по след дисциплинам: кольцо, брусья, перекладина, вольные упражнения, прыжки на дорожке, через коня. составить программу, которая обеспечивает ввод полученной информации.

буду благодарен, если напишите не очень заумно, прокомментировав, чтобы я смог понять и объяснить преподавателю.
TPYII вне форума   Ответить с цитированием

Старый 01.07.2009, 02:39
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Непременно попробуйте прочитать схожие обсуждения

Помогите решить задачи на C++
Помогите, пожалуйста, решить три задачи по Pascal

Старый 01.07.2009, 11:00   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от TPYII Посмотреть сообщение
я студент второго курса, нужно получить зачет по практике.
помогите решить задачи, на уровне второго курса, без заумных кодов, сохраните каждую задачу в файл PASCAL SAVE и дайте ссылку мне, буду очень благодарен вам!
И розовым бантиком перевязать?

Цитата:
1 - заполните одномерный массив положительными, расположенными на главной диагонали заданного квадратного массива. выведите полученный массив на экран и найдите произведение элементов. используйте подпрограммы для решения каждой части задачи.
CONST
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.

Цитата:
2 - составьте список учебной группы школы юного программиста, включающий N человек. для каждого укажите фамилию, имя, название школы, класс, количество сданных зачетов, оценку за итог экзамена. совокупность данных объединить в файл. составить программу, которая обеспечивает ввод полученной информации.
CONST
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.

Остальные задачи решаются в точности "по образу и подобию" этой - надо лишь менять количество, наименование и типы полей записи. Этой рутинной работой займитесь сами.
Vladimir_S вне форума   Ответить с цитированием
Старый 01.07.2009, 12:49   #3 (permalink)
TPYII
Новичок
 
Регистрация: 01.07.2009
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Огромное спасибо! Вы прям "Express". Без вас бы провалился...
TPYII вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 01:45.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.