// PascalABC.NET 3.2, сборка 1407 от 18.03.2017 // Внимание! Если программа не работает, обновите версию!
begin var a:=ReadlnString('Вводите:').ToWords; var c:=a[0].Last; Writeln('Найдено ',a.Where(w->w.First=c).Count, ' слов, начинающихся с "',c,'"') end.
Пример Вводите: Туча дождь астроном баран арбуз зебра астра велосипед Найдено 3 слов, начинающихся с "а"
Вариант "а нас в школе учат так", который якобы "проще"
var s:string; c:char; i,k,l,p:integer; begin // Предполагается, что слова разделены ровно одним пробелом Write('Вводите: '); Readln(s); l:=Length(s); if l=1 then Writeln('Найдено одно слово') else begin p:=Pos(' ',s); if (p=0) and (s[1]=s[l]) then Writeln('Найдено одно слово') else begin c:=s[p-1]; if s[1]=c then k:=1 else k:=0; for i:=p+1 to Length(s)-1 do if (s[i]=' ') and (s[i+1]=c) then Inc(k); Writeln('Найдено ',k,' слов, начинающихся с "',c,'"') end end end.
// PascalABC.NET 3.1, сборка 1200 от 13.03.2016 function IsPrime(n:integer):boolean; begin if n<4 then Result:=True else begin var found:= (n mod 2 = 0); var p:=3; while (not found) and (sqr(p)<=n) do begin found:=(n mod p = 0); p+=2 end; Result:=not found end end;
begin Writeln('k=',ArrRandom(ReadInteger('n='),1,999).Println. Where(x->IsPrime(x)).Count) end.
// PascalABC.NET 3.1, сборка 1200 от 13.03.2016 procedure IsPrime(n:integer; var res:boolean); begin if n<4 then res:=True else begin var found:= (n mod 2 = 0); var p:=3; while (not found) and (sqr(p)<=n) do begin found:=(n mod p = 0); p+=2 end; res:=not found end end;
begin var a:=ArrRandom(ReadInteger('n='),1,999); a.Println; var k:=0; var prime:boolean; foreach var e in a do begin IsPrime(e,prime); if Prime then Inc(k) end; Writeln('k=',k) end.
Объяснение:
4.
вправо
закрасить
вправо
закрасить
вправо
вниз
закрасить
вниз
закрасить
вниз
влево
закрасить
влево
закрасить
влево
вверх
закрасить
вверх
закрасить
вверх
6.
1*2=2
2+3=5
5*1=5
5+4=9
9*1=9
9+5=14
9.
a:=125:100=1
b:=125:100=1,25:10=0
c:=125:10=12,5
s:=1+0+12,5=13,5