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

Pascal, как изменить код программы которая высчитывает сумму всех элементов, до последнего положительного элемента(написать нужно не через break) вот код:

var n, p,i,k:integer;

m:array of real;

s:real;

begin

write('n');

readln(n);

setlength(m,n);

for i:=0 to n-1 do

m[i]:=random(21)-10;

for i:=0 to n-1 do

write(m[i]:8:2);

writeln;

for i:=n-1 downto 0 do

if m[i]>0 then

begin

k:=i;

break;

end;

for i:=0 to k do

s:=s+m[i];

writeln('Сумма элементов до последнего положительного элемента =', s);

👇
Ответ:
popravkinaekaterina
popravkinaekaterina
03.05.2022

var n, p,i,k:integer;

m:array of real;

s:real;

begin

write('n');

readln(n);

setlength(m,n);

writeln;  

for i:=0 to n-1 do

begin

m[i]:=random(21)-10;

write(m[i]:8:2);

if m[i]>0 then k:=i;

end;

writeln;  

S:=0

for i:=0 to k do

s:=s+m[i];

writeln('Сумма элементов до последнего положительного элемента =', s);

Объяснение:

Оптимизируем

for i:=0 to n-1 do  

m[i]:=random(21)-10;  

for i:=0 to n-1 do  

write(m[i]:8:2);

Объединим и заставим сразу считать k

for i:=0 to n-1 do

begin

m[i]:=random(21)-10;

write(m[i]:8:2);

if m[i]>0 then k:=i;

end;

выкидываем

for i:=n-1 downto 0 do

if m[i]>0 then  

begin

k:=i;

break;

end;

И вот еще не помню уже, но не будет лишним сделать S=0, может конечно при описании оно и становится 0, но лишним не будет. Нас учили так.

4,6(80 оценок)
Открыть все ответы
Ответ:
Юлия20122003
Юлия20122003
03.05.2022
25Кбайт = 625*1024 байт = 640000 байт
625кбайт = 625*1000 байт = 625000 байт
Потому 2 возможных решения:
640000 байт = 640000*8 = 5120000 бит
625000 байт = 625000*8 = 5000000 бит

скорость = Объем бит / время
отсюда
время = Объем бит / скорость

5120000 бит / 128000 бит/c = 5120000 / 128000 = 40 c
5000000 бит / 128000 бит/c = 5000000 / 128000 = 39,0625 c

Думаю правильней 40 с, так как Килоба́йт (КБ, Кбайт [1]) — единица измерения количества информации, равная 1024 байтам. Действующий ГОСТ [1] указывает на такое определение килобайта как на некорректное, но исторически сложившееся.
Но! Кто его знает, может вам дают уже по новой методике  так что вспомните была написано "кбайт" или "Кбайт"
Я бы выбрал 40, так как в свое время нас учили именно так
4,8(72 оценок)
Ответ:
Dobriyboy
Dobriyboy
03.05.2022
25Кбайт = 625*1024 байт = 640000 байт
625кбайт = 625*1000 байт = 625000 байт
Потому 2 возможных решения:
640000 байт = 640000*8 = 5120000 бит
625000 байт = 625000*8 = 5000000 бит

скорость = Объем бит / время
отсюда
время = Объем бит / скорость

5120000 бит / 128000 бит/c = 5120000 / 128000 = 40 c
5000000 бит / 128000 бит/c = 5000000 / 128000 = 39,0625 c

Думаю правильней 40 с, так как Килоба́йт (КБ, Кбайт [1]) — единица измерения количества информации, равная 1024 байтам. Действующий ГОСТ [1] указывает на такое определение килобайта как на некорректное, но исторически сложившееся.
Но! Кто его знает, может вам дают уже по новой методике  так что вспомните была написано "кбайт" или "Кбайт"
Я бы выбрал 40, так как в свое время нас учили именно так
4,7(1 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ