var a: string; i: integer; c: boolean; beginreadln(a); repeatif pos('+',a)< > 0 then begin inc(i); delete(a,pos('+',a),1); end; if pos('-',a)< > 0 then begin inc(i); delete(a,pos('-',a),1); end; if (pos('+',a)=0) and (pos('-',a)=0) then c: =true; until c; writeln(i); end.
narkimry134
16.05.2022
Var i,j: integer; f,st,x,s: real; begin write('x = '); readln(x); for i: = 1 to 7 do begin st: =1; for j: = 1 to 2*i-1 do st: =st*x; f: =1; for j: = 1 to 2*i-1 do f: =f*j; if i mod 2 = 1 then s: =s+st/f else s: =s-st/f end; writeln('s = ',s) end.
mariia39
16.05.2022
1. современное решение // pascalabc.net 3.2, сборка 1417 от 28.03.2017 // внимание! если программа не работает, обновите версию! begin var s: =readlines('input.txt').select(s-> s.towords). select(w-> (w[0]+' '+w[1], (w[2].tointeger+w[3].tointeger+w[4].tointeger)/; var max: =s.max(fb-> fb[1]); s.where(fb-> fb[1]=max).select(fb-> fb[0]).println(newline) end. 2. школьное решение в стиле "turbopascal 1983г" const n=50; // максимум лучших учеников var f: text; i,p,pa,b,sum,max: integer; sb: real; s,fio: string; flag: boolean; a: array[1..n] of string; begin assign(f,'input.txt'); reset(f); max: =0; pa: =1; while not eof(f) do begin readln(f,s); fio: =''; flag: =true; for i: =1 to length(s) do if s[i]< > ' ' then fio: =fio+s[i] else if flag then begin fio: =fio+' '; flag: =false end else break; p: =length(fio)+2; sum: =0; for i: =1 to 3 do begin b: =ord(s[p])-ord('0'); sum: =sum+b; p: =p+2 end; if sum> max then begin a[1]: =fio; pa: =2; max: =sum end else if sum=max then begin a[pa]: =fio; pa: =pa+1 end; end; close(f); for i: =1 to pa-1 do writeln(a[i]); end. 3. пример выполнения исходные данные (файл во вложении) иванов и.и. 4 5 4 сидорова с.с. 5 3 4 петров п.п. 5 5 4 козлов к.к. 3 3 5 васечкин в.в. 4 4 4 сорокина с.с. 5 5 4 тарасова т.т. 5 4 5 результат петров п.п. сорокина с.с. тарасова т.т. предвижу возражение, что современное решение "непонятно". а что, школьное понятнее? текст в 42 строчки понятнее чем в 5 строк? (я выкинул из обоих текстов по одному begin и end, окаймляющие программу). что дольше писать и отлаживать? где больше ошибок можно сделать? в конце-концов, что проще изучить с нуля - программирование в 5 строк или в 42? вот и вопрос - для чего в школах массово изучают такое несуразное программирование?
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Составьте программу, которая считает в формуле, заданной с клавиатуры, количество плюсов и минусов. на паскале. p.s формулы в программе быть не должно
var a: string; i: integer; c: boolean; beginreadln(a); repeatif pos('+',a)< > 0 then begin inc(i); delete(a,pos('+',a),1); end; if pos('-',a)< > 0 then begin inc(i); delete(a,pos('-',a),1); end; if (pos('+',a)=0) and (pos('-',a)=0) then c: =true; until c; writeln(i); end.