Нарисуйте блок схему к программе program b_3; var a, min,S,K:integer; begin S:=0; K:=0; readln(a); while a <> 0 do begin if (a mod 10 <>3) and (a mod 10 <> 5) then S:=S+a; K:=K+1; readln(a) end; writeln(S/(K-1)) end.
Предполагаю, что сначала указывается количество элементов исходного массива. Далее происходит все то, что вы описали. eps - погрешность для определения целого числа, чем оно меньше - тем точнее числа будут определяться как дробные
uses crt,graph; type mas=array[1..500] of Pointtype; var gd,gm,i,j,k,n:integer; a:mas; begin randomize; gd:=0; initgraph(gd,gm,''); for i:=1 to 500 do begin a[i].x:=random(getmaxX); a[i].y:=random(getmaxY); circle(a[i].x,a[i].y,2); end; k:=0;n:=0; repeat k:=k+1; delay(200); setcolor(0); for i:=1 to 500 do circle(a[i].x,a[i].y,2); for i:=1 to 500 do begin if a[i].y>getmaxY-n-10 then a[i].y:=1 else a[i].y:=a[i].y+3; if a[i].x<0 then a[i].x:=getmaxX else a[i].x:=a[i].x-1; end; setcolor(15); for i:=1 to 500 do circle(a[i].x,a[i].y,2); if k mod 20=0 then begin n:=n+1; line(0,getmaxY-n,getmaxX,getmaxY-n); end; until keypressed; readln end.
#include <stdio.h>
#include <math.h>
float eps = 0.000001;
int main()
{
float n; scanf("%f", &n);
float a[n];
for (int i=0;i<n;i++)
scanf("%f", a[i]);
char toCopy = 1;
for (int i=1;i<n;i+=2)
if (abs(round(a[i]) - a[i]) > eps)
{toCopy = 0; break;}
if (toCopy)
int b[n/2];
for (int i=n-(n%2), j=0;j<n/2;i-=2, j++)
b[j] = (int)a[i];
}
Объяснение:
Предполагаю, что сначала указывается количество элементов исходного массива. Далее происходит все то, что вы описали. eps - погрешность для определения целого числа, чем оно меньше - тем точнее числа будут определяться как дробные