Дан одномерный массив X. Найти количество элементов массива, значение которых больше его индекса. Вывести на экран сумму всех элементов массива, имеющих дробную часть — Pascal(Паскаль)

Модуль

unit unit1;
interface
uses crt;
const nmax=100;
type mas=array[1..nmax] of real;
procedure Vvod(var v:mas;var k:byte);
procedure Kol(v:mas;k:byte);
procedure Summa(var v:mas;k:byte);
implementation
procedure Vvod;
var i:byte;
begin
repeat
write('Размер массива до ',nmax,' = ');
readln(k);
until k in [1..nmax];
writeln('Введите ',k,' элементов массива:');
for i:=1 to k do
 begin
  write('el[',i,']=');
  readln(v[i]);
 end;
clrscr;
writeln('Массив:');
for i:=1 to k do
write(v[i]:0:2,' ');
writeln;
writeln;
end;
procedure Kol;
var i,b:byte;
begin
writeln('Элементы большие своего индекса:');
b:=0;
for i:=1 to k do
if v[i]>i then
 begin
  write(v[i]:0:2,' ');
  b:=b+1;
 end;
writeln;
if b=0 then writeln('Таких элементов нет!')
else writeln('Их количество=',b);
writeln;
end;
procedure Summa;
var s:real;
    i,f:byte;
begin
writeln('Элементы массива с дробной чачтью:');
s:=0;f:=0;
for i:=1 to k do
if frac(v[i])>0 then
 begin
  f:=1;
  write(v[i]:0:2,' ');
  s:=s+v[i];
 end;
writeln;
if f=0 then writeln('Таких элементов нет!')
else writeln('Их сумма=',s:0:2);
end;
end.

Программа

uses crt,unit1;
var x:mas;
    n:byte;
begin
clrscr;
Vvod(x,n);
Kol(x,n);
Summa(x,n);
readln
end.

Leave a Comment

58 − 54 =