Синфой. именно на языке ! 8. напишите процедуру, которая принимает параметр – натуральное число n – и выводит на экран квадрат из звездочек со стороной n.
Procedure wr( ch: char; c: integer ); var i: integer; begin for i := 1 to c do write(ch); end; procedure square( n: integer ); var i: integer; begin wr( '*', n ); writeln; for i := 2 to n-1 do begin write( '*' ); wr( ' ' ); writeln( '*' ); end; wr( '*', n ); writeln; end;
1) посчитать сумму всех нечетных чисел от 230 до 430 // PascalABC.NET 3.0, сборка 1088 var i,s:integer; begin i:=231; s:=0; repeat s:=s+i; i:=i+2 until i>400; Writeln('Сумма нечетных чисел на интервале [230;400]: ',s) end.
Результат выполнения программы: Сумма нечетных чисел на интервале [230;400]: 26775
2) вычислить квадратные корни из чисел : 900, 893, 886,... до тех пор пока это можно делать // PascalABC.NET 3.0, сборка 1088 var i:integer; begin i:=900; repeat Write('(',i:3,',',sqrt(i):9:5,') '); i:=i-7 until i<0; Writeln; end.
3) найти сумму чисел шестизначного числа // PascalABC.NET 3.0, сборка 1088 var n:longint; s:integer; begin Write('n='); Read(n); repeat s:=s + (n mod 10); n:=n div 10 until n=0; Writeln('Сумма цифр числа равна ',s) end.
Тестовое решение: n=472305 Сумма цифр числа равна 21
Двоеточие - это часть команды (оператора), который называется оператор присваивания. В данном контексте всегда используется два символа ":=". Команда присваивания y:=y-x означает, что берутся текущие значения переменных x и y, находится их разность, после чего результат записывается (говорят - "присваивается") переменной y. Например, если значение y было задано y:=20; а x:=1; то новое значение переменной y будет равно 20-1=19. В команде x:=x*2 все аналогично. Берется текущее (установленное ранее) значение переменной x, умножается на 2, а результат этого умножения становится новым значением переменой x. Старое значение при этом безвозвратно теряется.
var i: integer;
begin for i := 1 to c do write(ch); end;
procedure square( n: integer );
var i: integer;
begin wr( '*', n ); writeln;
for i := 2 to n-1 do begin write( '*' ); wr( ' ' ); writeln( '*' ); end;
wr( '*', n ); writeln; end;