В приведенном фрагменте программы после начального присваивания s:=0 будет выполняться цикл. В теле цикла находятся 2 оператора - в первом операторе вычисляется значение s, во втором - вычисленное значение выводится на экран. Анализ работы цикла:
j=10, s=s+2*j=0+2*10=20, вывод на экран 20
j=11, s=20+2*11=42, вывод на экран 42
<span>j=12, s=42+2*12=66, вывод на экран 66
</span>j=13, s=66+2*13=92, вывод на экран 92
j=14, s=92+2*14=120, вывод на экран 120
<span>j=15, s=120+2*15=150, вывод на экран 150
</span>Таким образом, на экран будет выведено: 20426692120150
//PascalABC.NET версия 3.3.5
var ar: array[0..3] of integer;
digits: array[0..9] of integer;
out: array[1..4, 1..7]of integer;
begin
for var i := 0 to 9 do
digits[i] := 0;
var sum := 0;
for var i := 1 to 2 do
begin
out[i][1] := 1053;
out[i][2] := 1077;
out[i][3] := 1074;
out[i][4] := 1077;
out[i][5] := 1088;
out[i][6] := 1085;
out[i][7] := 1086;
end;
out[4][1] := 1053;
out[4][2] := 1077;
out[4][3] := 1074;
out[4][4] := 1077;
out[4][5] := 1088;
out[4][6] := 1085;
out[4][7] := 1086;
out[3][1] := 1042;
out[3][2] := 1077;
out[3][3] := 1088;
out[3][4] := 1085;
out[3][5] := 1086;
out[3][6] := 160;
out[3][7] := 160;
var num := readinteger('Введите четырехзначное число:');
ar[3] := num mod 10;
ar[2] := num div 10 mod 10;
ar[1] := num div 100 mod 10;
ar[0] := num div 1000;
for var i := 0 to 3 do
digits[ar[i]] += 1;
for var i := 0 to 9 do
try
sum += digits[i] div digits[i];
except
on System.DivideByZeroException do
end;
for var i := 1 to 7 do
write(chr(out[sum][i]));
end.
Static void Main(string[] args)
{
StringBuilder str = new StringBuilder();
Console.Write("Введите строку, ввод завершится по точке: ");
char input = Console.ReadKey(true).KeyChar;
if (char.IsLetterOrDigit(input) || char.IsSeparator(input)) Console.Write(input);
while(input != '.')
{
str.Append(input);
input = Console.ReadKey(true).KeyChar;
if (char.IsLetterOrDigit(input) || char.IsSeparator(input)) Console.Write(input);
}
Console.WriteLine();
string resStr = str.ToString();
int a = resStr.Count(p => p == 'а');
int b = resStr.Count(p => p == 'б');
if (a > b)
Console.WriteLine("В строке чаще встречается буква а");
else if (a < b)
Console.WriteLine("В строке чаще встречается буква б");
else
Console.WriteLine("В строке букв а и б равное количество");
Console.ReadKey();
}
const
n = 30;
var
a: array [1..n] of integer;
s, i: integer;
begin
for i := 1 to n do
begin
a[i] := random(151) + 50;
writeln('Дом ', i, ' = ', a[i]);
end;
for i := 1 to n do
s := s + a[i];
writeln('Всего ', s);
end.
Ввод данных
Для ввода исходных данных чаще всего используется процедура ReadLn:
ReadLn(A1,A2,...AK);
Процедура производит чтение К значений исходных данных и присваивает эти значения переменным А1, А2, ..., АК.
При вводе исходных данных происходит преобразование из внешней формы представления во внутреннюю, определяемую типом переменных. Переменные, образующие список ввода, могут принадлежать либо к целому, либо к действительному, либо к символьному типам. Чтение исходных данных логического типа в языке Паскаль недопустимо.
Значения исходных данных могут отделяться друг от друга пробелами и нажатием клавиш табуляции и Enter.
Не допускается разделение вводимых чисел запятыми!
Вывод данных
Для вывода результатов работы программы на экран используются процедуры:
Write(A1,A2,...AK);
WriteLn(A1,A2,...AK);
Первый из этих операторов производит вывод значений переменных А1, А2,...,АК в строку экрана. Второй оператор, в отличие от первого, не только производит вывод данных на экран, но и производит переход к началу следующей экранной строки. Если процедура writeln используется без параметров, то она просто производит пропуск строки и переход к началу следующей строки.
Переменные, составляющие список вывода, могут относиться к целому, действительному, символьному или булевскому типам. В качестве элемента списка вывода кроме имен переменных могут использоваться выражения и строки.
Форма представления значений в поле вывода соответствует типу переменных и выражений: величины целого типа выводятся как целые десятичные числа, действительного типа - как действительные десятичные числа с десятичным порядком, символьного типа и строки - в виде символов, логического типа - в виде логических констант TRUE и FALSE.
Оператор вывода позволяет задать ширину поля вывода для каждого элемента списка вывода. В этом случае элемент списка вывода имеет вид А:К, где А - выражение или строка, К - выражение либо константа целого типа. Если выводимое значение занимает в поле вывода меньше позиций, чем К, то перед этим значением располагаются пробелы. Если выводимое значение не помещается в ширину поля К, то для этого значения будет отведено необходимое количество позиций.
Для величин действительного типа элемент списка вывода может иметь вид А:К:М, где А - переменная или выражение действительного типа, К - ширина поля вывода, М - число цифр дробной части выводимого значения. К и М - выражения или константы целого типа. В этом случае действительные значения выводятся в форме десятичного числа с фиксированной точкой.
Пример записи операторов вывода:
var rA, rB: Real;
iP,iQ:Integer;
bR, bS: Boolean;
chT, chV, chU, chW: Char;
begin
. . .
WriteLn(rA, rB:10:2);
WriteLn(iP, iQ:8);
WriteLn(bR, bS:8);
WriteLn(chT, chV, chU, chW);
end.