Потому что условный оператор проверяет выражение на истинность. Если истина то выполнится одна ветка, если ложь то другая ветка конструкции ветвления.
// PascalABC.NET 3.1, сборка 1230 от 27.04.2016
begin
var s:=ReadlnString('>').ToWords;
var c:=UpCase(s[0][1]); // первая буква первого слова
var w:string:=s[1].ToUpper; // второе слово на верхнем регистре
var n:=0;
for var i:=1 to w.Length do
if Pos(c,w[i])>0 then Inc(n);
Writeln('Буква "',s[0][1],'" встретилась во втором слове ',
n,' раз(а)')
end.
<u><em>Тестовое решение</em></u>
> Васильев Воеводченков
Буква "В" встретилась во втором слове 3 раз(а)
Знаю, что код не очень, но работает :d
Языки программирования низкого уровня.
Язык ассемблера.
CIL, используемый в Microsoft.NET
<em><u>1. "Школьное" решение</u></em>
//PascalABC.Net 3.0, сборка 1064
var
s:string;
i,k:integer;
begin
Write('Введите натуральное число: '); Readln(s);
k:=0;
for i:=1 to Length(s) do
if s[i]='0' then Inc(k);
Writeln('Количество нулей в записи числа равно ',k)
end.
<em><u>Пример:</u></em>
Введите натуральное число: 13054000230
Количество нулей в записи числа равно 5
<em><u>2. Современное решение</u></em>
//PascalABC.Net 3.0, сборка 1064
begin
var s:=ReadString('Введите натуральное число: ');
Writeln('Количество нулей в запиcи числа равно ',s.Where(x->x='0').Count)
end.
<em><u>Пример:</u></em>
Введите натуральное число: 13054000230
Количество нулей в записи числа равно 5