Структура системы это набор элементов системы и связей между ними. Например, персональный компьютер можно считать системой, где есть следующие элементы 1. блок питания 2. материнская плата 3. оперативная память 4. центральный процессор 5. видеокарта 6. сетевая карта 7. проигрыватель оптических дисков 8. модем. Операционную систему компьютера можно считать системой. Самолет типа Boeing является системой. Ракета-носитель является системой, в которой присутствует система управления, система навигации, разгонный блок, двигатель первой ступени, двигатели второй ступени, двигатели третьей ступени и др. элементы
Уровень А type num=integer; { можно поменять на real, longint, даже char... }
procedure Swap(var a,b:num); { меняет местами значения a и b } var t:num; begin t:=a; a:=b; b:=t end;
procedure Moving(var a,b,c:num); begin if a>b then begin Swap(a,b); if b>c then begin Swap(b,c); if a>b then Swap(a,b) end end else begin if b>c then Swap(b,c); if a>b then Swap(a,b) end end;
var a,b,c:num; begin Write('Введите три числа: '); Read(a,b,c); Moving(a,b,c); Writeln(a,' ',b,' ',c) end.
Уровень В function Gcd(a,b: longint): longint; { Нахождение НОД } var i: longint; begin while b <> 0 do begin a := a mod b; i := b; b := a; a := i end; gcd := a end;
procedure ShortFraction(var m,n:longint); var k:longint; begin k:=Gcd(m,n); m:=m div k; n:=n div k end;
var a,b:longint; begin Write('Введите числитель и знаменатель дроби: '); Readln(a,b); ShortFraction(a,b); Writeln('Дробь после сокращения равна ',a,'/',b) end.
Тестовое решение: Введите числитель и знаменатель дроби: 25 15 Дробь после сокращения равна 5/3
function greatest_common_divisor(m, n: integer): integer; var modulo: integer; begin modulo := m mod n; if modulo = 0 then greatest_common_divisor := n else greatest_common_divisor := greatest_common_divisor(n, modulo) end;
procedure reduce_the_fraction(a, b: integer); var gcd: integer; sign: string; begin gcd := greatest_common_divisor(a, b); if a * b < 0 then sign := '-'; writeln(sign, abs(a) / gcd, '/', abs(b) / gcd); end;
begin write('Enter two numbers: '); readln(a, b); reduce_the_fraction(a, b); end.