Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   QBasic, массивы (http://www.tehnari.ru/f41/t45843/)

glos 17.01.2011 19:28

QBasic, массивы
 
Очень прошу помогите с задачкой, последнее задание осталось даже не пойму как алгоритм составить.. кто чем может помогите!!:tehnari_ru_117:

Задание:
Написать программу формирования одномерного массива размера М.
Полученный массив напечатать.
Выполнить обработку и преобразование массива
На печатать преобразованный массив
Подобрать контрольный пример


Вариант: Найти сумму модулей отрицательных нечетных элементов. Получить новый массив путем возведения в квадрат элементов, стоящих на четных местах

AlexZir 17.01.2011 19:49

Массив как заполнять будете: случайными значениями или путем ввода с клавиатуры?

Алгоритм следующий:
1) определяем значение переменной M
2) определяем числовой массив вещественного типа (так как не сказано, какой именно тип данных в нем хранится) размерностью M элементов.
3) инициализируем переменную для суммы.
4) в цикле заполняем массив значениями и в следующем цикле выводим массив на экран
5) в цикле анализируем значение текущего элемента массива и при отрицательном значении к переменной суммы прибавляем модуль значения этого элемента (функция ABS - модуль числа).
в этом же цикле анализируем индекс текущего элемента и, если он нечетный, возводим во вторую степень значение текущего элемента массива.
6) выводим значение суммы
7) в цикле выводим значение элементов массива

glos 18.01.2011 10:55

Спасибо большое! Осталось вспомнить как в программе это все написать (

glos 18.01.2011 17:11

Помогите как программу то написать?? Мылю веревку, завтра буду вешатся :tehnari_ru_1019: все задания сам сделал а по массивам я пас (((

glos 19.01.2011 06:08

INPUT "vvedite razmernoct massiva:"; M
INPUT "Vvedite znachenie massiva"; I, K
DIM A(M)
S = 0
FOR I = 1 TO M
A(I) = K
NEXT I
FOR I = 1 TO M
PRINT "Znachenie massiva "; I; "="; A(I)
IF A(I) < 0 THEN S = S + ABS(A(I)) ELSE
S = S + (I)
IF ABS(I / 2) <> (I / 2) THEN A(I) = A(I) ^ 2
NEXT I
PRINT "Summa="; S
FOR I = 1 TO M
PRINT "Znachenie massiva I="; A(I)
NEXT I
END


так правильно??

glos 19.01.2011 11:42

вот правильно
 
INPUT "vvedite razmernoct massiva:"; M
DIM A(M)
S = 0
FOR I = 1 TO M
INPUT "Vvedite znachenie massiva:"; K
A(I) = K
NEXT I
REM Vivodim na pechat
FOR I = 1 TO M
PRINT "Znachenie massiva "; I; "="; A(I)
NEXT I
FOR I = 1 TO M
IF A(I) < 0 AND (INT(A(I)/2) <> A(I)/2) THEN S = S + ABS(A(I))
IF INT(I / 2) = (I / 2) THEN A(I) = A(I) ^ 2
NEXT I
PRINT "Summa="; S
FOR I = 1 TO M
PRINT "Znachenie massiva I="; A(I)
NEXT I
END
:tehnari_ru_953:

CAT-17 21.12.2013 06:04

Массивы
 
1) Найти количество отрицательных элементов массива.
2) Даны два массива K(9)=(1, -3, 7, 8, -14, 60, -5, 9, -2) и M(9)=(-4, 71, 8, 13, 17, 54, 7, 1, 0). Составить программу определяющую порядковые номера отрицательных элементов массива.
:tehnari_ru_837:


Часовой пояс GMT +4, время: 22:15.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.