Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.56/16: Рейтинг темы: голосов - 16, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11

Вычислить среднее арифметическое тех положительных элементов массива, которые делятся на 4 без остатка

21.06.2009, 09:42. Показов 3414. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста составить программу на qbasik.

Дан одномерный массив С1,С2,K,Сn. Вычислить среднее арифметическое тех положительных элементов массива, которые делятся на 4 без остатка. Каждый третий элемент массива умножить на найденное значение среднего. Затем найти в массиве минимальный элемент с нечетным номером и, если его значение преднадлежит интервалу [A,B], заменить его единицей, в противном случа нулём.

Так же нужно учесть все возможные критические ситуации.
Например:

QBasic/QuickBASIC
1
2
3
4
5
INPUT, z (z=0)
IF z=0 THEN PRINT "На ноль делить нельзя" ELSE
x=100\z
PRINT x
END
Заранее спасибо.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.06.2009, 09:42
Ответы с готовыми решениями:

Вычислить среднее арифметическое и среднее геометрическое положительных элементов массива
В данном массиве А{n} вычислить среднее арифметическое и среднее геометрическое положительных элементов

Вычислить среднее арифметическое значение положительных элементов массива
Обработать на компьютере одномерный массив B(N): вычислить среднее арифметическое значение положительных элементов массива, найденное...

Найти среднее арифметическое значение тех элементов, которые лежат за пределами заданного диапозона [a,b].
2.Дан одномерный массив чисел.Найти среднее арифметическое значение тех из них,которые лежат за пределами заданного диапозона . ...

20
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
21.06.2009, 10:13
Цитата Сообщение от Deven Посмотреть сообщение
Дан одномерный массив С1,С2,K,Сn
что такое K?
0
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11
21.06.2009, 10:24  [ТС]
Это типо задание одномерно массива.
PureBasic
1
2
3
4
5
input "число эдементов массива"; n
dim k(1 to n)
for i=1 to n
input "Значение элемента"; k(i)
next
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
21.06.2009, 10:30
Deven, ну дык, у вас и та все красиво выходит. в чем затруднения?
вот тока, я не понял массив К или С?
0
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11
21.06.2009, 12:26  [ТС]
затруднее в дальнейшем, так как забыл многие операторы и как ими пользоваться.
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
21.06.2009, 13:33
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Цитата Сообщение от Deven Посмотреть сообщение
забыл многие операторы и как ими пользоваться
реально?
у тя ж все необходимые операторы уже в примерах приведены.
ну лана, двоешник, смари:
PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
DIM Summa as double, A as double, B as double, minC as double
DIM n as integer, L as integer
CLS
INPUT "число элементов массива"; n
DIM C(1 TO n) as double
Summa=0
L=0
FOR i=1 TO n
   INPUT "Значение элемента"; C(i)
   if c(i)>0 and c(i)\4=0 Then
        Summa=Summa+c(i)
        L=L+1
   end if
NEXT i
if L=0 then
   PRINT "На ноль делить нельзя"
   EXIT
else
   Summa=Summa/L
end if
FOR i=1 TO n
   if i\3=0 Then
        c(i)=c(i)*Summa
   end if
NEXT i
minC = c(2)
L=2
FOR i=3 TO n
   if i\2=0 and minC>c(i) Then
        minC=c(i)
        L=i
   end if
NEXT i
INPUT "граница А"; A
INPUT "граница B"; B
If (a-minC)*(minC-b) > 0 then
   c(L)=1
   print minC; L
else
   c(L)=0
   print "HE преднадлежит интервалу"
end if
end
Добавлено через 28 минут 53 секунды
Deven, какой из этих операторов ты не знаешь?
1
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11
21.06.2009, 13:51  [ТС]
Что то Basic не понимает 17 строчку и если поменять на end он всё время выдаёт что на 0 делить нельзя.
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
21.06.2009, 13:56
замени на END
0
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11
21.06.2009, 14:07  [ТС]
ладно спасибо и на этом, буду его доконца мучать что бы рабоатал.
Или я туплю или что то тупит что всегда получатся вне диапазона.
Спасибо огромное за помощь.
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
21.06.2009, 14:21
Deven, я дома задачку проверю - завтра если чо новый вариант выложу ))
щас у мну интерпретатора нету - может что в алгоритме и напутал ))

Не по теме:

ты б сам без обработчика попробовал

0
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11
21.06.2009, 20:05  [ТС]
у меня так же вопрос по первым двум строчкам.
PureBasic
1
2
DIM Summa AS DOUBLE, A AS DOUBLE, B AS DOUBLE, minC AS DOUBLE
DIM n AS INTEGER, L AS INTEGER
Dim это ведь оператор задания массива.

И зачем нужны там as double и as integer ??? ни когда так не делал. Это меня совсем сбивает.

Обьясните пожалуйста.
0
 Аватар для Toxa33rus
3918 / 919 / 125
Регистрация: 16.04.2009
Сообщений: 1,951
21.06.2009, 21:41
Это тип данных. Сбивает с толку? Ну и удалите их
1
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11
22.06.2009, 11:34  [ТС]
Я практические разобрался, только объясните пожалуйста мне дураку ход логики в:
в этой части.
PureBasic
1
2
3
4
5
6
7
8
minC = c(2)
L=2
FOR i=3 TO n
   IF i\2=0 AND minC>c(i) THEN
        minC=c(i)
        L=i
   END IF
NEXT i
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
22.06.2009, 11:44
тут ошибка ) сорри )
д.б. так:
PureBasic
1
2
3
4
5
6
7
8
minC = c(1)
L=1
FOR i=3 TO n
   IF i\2=1 AND minC>c(i) THEN
        minC=c(i)
        L=i
   END IF
NEXT i
Добавлено через 4 минуты 16 секунд
Цитата Сообщение от БурундукЪ Посмотреть сообщение
PureBasic
1
IF i\2=1 AND minC>c(i) THEN
проверка на нечетность i\2=1 и на то что минимальный элемент больше данного
1
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11
22.06.2009, 13:24  [ТС]
Что я походу туплю, так как последняя часть задания была минимальный элемент с нечетным номером проверить по интервалу и если принадлежит заменить на 1 в противном случае на 0 и вывести на экран.

Он походу всегда первый элемент заменяет на 1 в том случае если принадлежит интервалу.

Разжуйте плиз логику в последней части.
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
22.06.2009, 13:35
PureBasic
1
2
3
4
5
6
7
8
9
10
INPUT "граница А"; A
INPUT "граница B"; B
IF (a-minC)*(minC-b) > 0 THEN
   c(L)=1
   PRINT minC; L
ELSE
   c(L)=0
   PRINT "HE преднадлежит интервалу"
END IF
END
эта формула (a-minC)*(minC-b)>0 и служит для определения попадания в диапазон
0
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11
22.06.2009, 14:24  [ТС]
Канцовка что то работает не правельно.
Так как при вводе массива с 3х элементов (8;4;3)
в конце запрос интервала

Пример 1- 1-10 (Входит)
minc=8, l=1 т.е. выводит 8 1

Пример 2 - 9-15 (Не входит)
minc =8, l= 1 он снова так и выводит 8 1

Не понятно.

[404]
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
22.06.2009, 14:38
Deven, скинь мне то чо ты там наваял?
бо шото не то рисует
0
0 / 0 / 0
Регистрация: 21.06.2009
Сообщений: 11
22.06.2009, 14:50  [ТС]
QBasic/QuickBASIC
10 REM
20 CLS
30 INPUT "Число элементов массива"; n
40 DIM c(1 TO n)
50 s = 0
60 l = 0
70 FOR i = 1 TO n
80 INPUT "Значение элемента"; c(i)
90 IF c(i) > 0 AND c(i) MOD 4 = 0 THEN
100 s = s + c(i)
110 l = l + 1
120 END IF
130 NEXT i
140 IF l = 0 THEN
150 PRINT "Нет ни одного подходящего элемента"
160 END
170 ELSE
180 s = s / l
190 PRINT "Среднее арифметичекое", s
200 END IF
210 FOR i = 1 TO n
220 IF i MOD 3 = 0 THEN
230 c(i) = c(i) * s
250 PRINT "Элемент номер "; i; "умножим на"; s; "Получим", c(i)
260 END IF
270 NEXT i
290 minc = c(1)
300 l = 1
310 FOR i = 3 TO n
320 IF i \ 2 = 1 AND minc > c(i) THEN
330 minc = c(i)
340 l = i
350 END IF
360 NEXT i
370 INPUT "Граница A"; a
380 INPUT "Граница B"; b
390 IF (a - minc) * (minc - b) > 0 THEN
400 c(l) = 1
410 PRINT minc; l
420 ELSE
430 c(l) = 0
440 PRINT "Не пренадлежит интервалу", minc; l
450 END IF
460 END
0
 Аватар для BasicMan
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
22.06.2009, 15:33
вот концовка
PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
310 FOR i = 3 TO n
320 IF i mod 2 = 1 AND minc > c(i) THEN
330 minc = c(i)
340 l = i
350 END IF
360 NEXT i
370 INPUT "Граница A"; a
380 INPUT "Граница B"; b
390 IF (a - minc) * (minc - b) > 0 THEN
400 c(l) = 1
410 PRINT minc; l
420 ELSE
430 c(l) = 0
440 PRINT "Не пренадлежит интервалу"
450 END IF
460 END
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.06.2009, 15:33
Помогаю со студенческими работами здесь

Найти среднее арифметическое отрицательных чисел и среднее геометрическое положительных элементов массива
Дан массив Х(20) с целыми числами диапазон (-25 +25) Найти среднее арифметическое отрицательных чисел и среднее геометрическое...

Среди чисел 1, ..., n найти все такие, которые делятся без остатка на 3, 5, 7, 9
Дано натуральное число n. Среди чисел 1, ..., n найти все такие, которые делятся без остатка на 3, 5, 7, 9. Нахождение кратных чисел...

Найти среднее арифметическое положительных элементов массива A(N,M).
1) Найти среднее арифметическое положительных элементов массива A(N,M).

Найти среднее арифметическое положительных элементов массива A(N,M).
Найти среднее арифметическое положительных элементов массива A(N,M). помогите пожалуйста

Найти среднее арифметическое положительных элементов массива
Найти среднее арифметическое положительных элементов массива A(N,M) только без матрицы,чтоб самим цифры вводить, построить блог-схему


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru