|
|
zadach473.PAS |
|
{* Задача 473 *}Unit ZADACH473;Interface Implementation Begin writeln(' Описать подпрограмму-процедуру, определяющую координаты центра тяжести (точку О(x0, y0)) системы материальных частиц с координатами Mi(xi, yi) и с массами mi (должны быть заданы три массива xi, yi, mi для задания одной системы частиц) по следующим формулам: В главной программе для двух заданных систем материальных частиц выяснить не совпадают ли их центры тяжести. '); End. Program zadach473; Uses zadach473.pas; {* Эту строку можно удалить *} Const {* Предопределенные *} n = 3; Type {* Используемые типы *} mass = Array [1..n] Of integer; Var {* В работе нам потребуются переменные: *} i : integer; x : mass; y : mass; m : mass; x01 : real; y01 : real; x02 : real; y02 : real; Procedure Centr (x : mass; y : mass; m : mass; Var {* Объявление переменных *} x0 : real); y0 : real); Var {* Объявление переменных *} s1 : integer; s2 : integer; s3 : integer; d : mass; c : mass; Begin s1 := 0; s2 := 0; s3 := 0; For i := 1 To n Do {* Цикл для i => [1 .. n] *} Begin d[i] := m[i] * x[i]; c[i] := m[i] * y[i]; End; For i := 1 To n Do {* Переменная i увеличивается с 1 до n *} Begin s1 := s1 + m[i]; s2 := s2 + d[i]; s3 := s3 + c[i]; End; x0 := s2 / s1; y0 := s3 / s1; End; Begin writeln ('Введите массив x'); For i := 1 To 3 Do {* Переменная i увеличивается с 1 до 3 *} readln (x[i]); writeln ('Введите массив y'); For i := 1 To 3 Do {* Переменная i увеличивается с 1 до 3 *} readln (y[i]); writeln ('Введите массив m'); For i := 1 To 3 Do {* Цикл для i => [1 .. 3] *} readln (m[i]); Centr (x, y, m, x01, y01); writeln ('Координаты центра тяжести 1 системы = ', x01, ' ', y01); writeln ('Введите массив x'); For i := 1 To 3 Do {* Переменная i увеличивается с 1 до 3 *} readln (x[i]); writeln ('Введите массив y'); For i := 1 To 3 Do {* Цикл для i => [1 .. 3] *} readln (y[i]); writeln ('Введите массив m'); For i := 1 To 3 Do {* Цикл для i => [1 .. 3] *} readln (m[i]); Centr (x, y, m, x02, y02); writeln ('Координаты центра тяжести 2 системы = ', x02, ' ', y02); If (x01 = x02) And (y01 = y02) Then writeln ('Совпадают') Else writeln ('Не совпадают'); End. 07.08.2014 - Breakpoint - точка остановки 07.08.2014 - Топ-10 самых популярных приложений в Facebook 18.11.2013 - Панель управления и персонализация системы. Windows Vista 18.11.2013 - Логические и физические диски. Windows Vista 18.11.2013 - Удаление файлов и папок 01.11.2013 - Программирование дисковых подсистем: возможности 31.10.2013 - Windows8 или Windows7? 31.10.2013 - Windows8, игры |
|
Non-commercial fansite
|