М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
лада161
лада161
01.11.2021 08:25 •  Информатика

Написать программу суммирования элементов массива, состоящего из 20 произвольных чисел до первого отрицательного числа. плз .

👇
Ответ:
Айдан1231
Айдан1231
01.11.2021
Const n=20;
var a:array [1..n] of integer; 
s,i:integer; 
begin 
Randomize;
for i:= 1 to n do
 begin
 a[i]:=Random(21)-10;
 Write(a[i],' ')
 end;
writeln;
s:=0;
i:=1;
while (i<=n)and(a[i]>0) do 
 begin s:=s+a[i]; i:=i+1; end;
Writeln('Сумма элементов массива до первого отрицательного числа = ',s);
end.

Пример:
7 4 -5 6 -3 0 4 4 4 3 0 0 5 6 9 6 3 -9 -3 6 
Сумма элементов массива до первого отрицательного числа = 11
4,8(68 оценок)
Ответ:
SnopcovaAlina07
SnopcovaAlina07
01.11.2021
Program symm;uses crt;
const N=20;
var masiv:array [1..20] of integer; i:integer; summa,x:integer;begin for i:= 1 to N do   begin    masiv[i]:=Random(25)-10;    Writeln(masiv[i])   end;  for i:= 1 to N do    if (masiv[i]>0) then    begin     x:=masiv[i];     summa:=summa+x;    end    else         begin    Writeln();     Writeln('Сумма элементов массива до первого отрицательного числа=',summa);     Halt    end;
end.
4,8(35 оценок)
Открыть все ответы
Ответ:
sofiyka4
sofiyka4
01.11.2021
1. Путь решения

Поскольку среднее всех введенных чисел нельзя найти, пока не будет закончен ввод этих чисел, а затем каждое число нужно будет сравнивать с этим средним, введенные числа придется где-то хранить. Например, в массиве длиной 100 (в условии сказано, что количество чисел "до 100").
Считаем, что описан массив a[1..100] и в нем находятся n≤100 целых чисел (можно и нецелых, но раз ничего не сказано в условии, мы вправе решить это сами).
Тогда среднее определится по формуле:
\displaystyle m= \frac{1}{n} \sum_{i=1}^na_i
а сумму мы умеем считать, накапливая значение в цикле со счетчиком, дающем проход по всем элементам массива.
Искомое количество чисел, меньших среднего - это тоже сумма, найти которую позволит еще один цикл, но в нем уже будет анализ условия.
\displaystyle k=\sum_{i=1}^na_i, \ a_i\ \textless \ m

2. Программа на языке Pascal

const
  nn=100;
var
  i,n,k,s:integer;
  m:real;
  a:array[1..nn] of integer;
begin
  Write('Количество чисел равно '); Read(n);
  Writeln('Введите числа:');
  s:=0;
  for i:=1 to n do begin Read(a[i]); s:=s+a[i] end;
  m:=s/n;
  k:=0;
  for i:=1 to n do
    if a[i]<m then Inc(k);
  Writeln('Количество чисел, превышающих среднее значение, равно ',k)
end.

3. Пример работы программы

Количество чисел равно 10
Введите числа:
6 -4 11 -7 5 7 0 3 5 -2
Количество чисел, превышающих среднее значение, равно 4
4,4(81 оценок)
Ответ:
RTF1111
RTF1111
01.11.2021

ответ: N - количество чисел(вводим с клавиатуры)

K - требуемый член. К не может быть больше N , поэтому если к больше N программа требует ввести вас число К еще раз.

Объяснение:

#include <stdio.h>

#include <malloc.h>

int main(void) {

int N,k,*a,b=0 ;

printf("Введите количество введеных чисел ");

scanf("%d",&N);

while(b==0){

printf("Введите число К ");

scanf("%d",&k);

if(k>N){printf("число к не может быть больше N.");continue;}

b=1;

  }

a = (int*)malloc(N* sizeof(int));

for(int i=0;i<N;i++)

  {  

printf("введите ");printf("%d",i+1); printf("-ый член ");

scanf("%d",&a[i]);

  }

printf("К-ый член набора равен  = ");printf("%d",a[k-1]);

free(a);

return 0;

}

4,8(92 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ