IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Qbasic Вычислить элементы новой матрицы по правилу Z(ij)=Yij/Ki
matsod
сообщение 14.12.2008, 12:52
Сообщение #1


Пользователь


Группа: Пользователи
Сообщений: 3
Регистрация: 14.12.2008
Пользователь №: 21 155



Дана матрица Y(5, 5) (элементы задать самостоятельно). Вычислить элементы новой матрицы Z (5, 5) по правилу Z(ij)=Yij/Ki, где Кi - количество положительных элементов i-той строки. Если в i-той строке положительных элментов нет, то i-тая строка в матрице Z должна быть заполнена нулями. Отпечать для сравнения обе матрицы.
Сколько бился не бился ничего не выходит. Получается сделать только первый шаг, чтобы заполнить матрицу дальше вылетает ошибка, мол индекс вне диапазона.
Помогите, пожалуйста, а то скоро конец зачетной недели, а из-за этой задачи не могу сдать зачет.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Denis
сообщение 14.12.2008, 13:00
Сообщение #2


Пользователь


Группа: Пользователи
Сообщений: 1 081
Регистрация: 24.1.2005
Пользователь №: 1 933



свои наброски показывай...
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
matsod
сообщение 14.12.2008, 13:04
Сообщение #3


Пользователь


Группа: Пользователи
Сообщений: 3
Регистрация: 14.12.2008
Пользователь №: 21 155



Не судите строго, я дилетант в этом деле.
Код
CLS
DIM y(5, 5), z(5, 5)
FOR i = 1 TO 5
FOR j = 1 TO 5
INPUT y(i, j)
NEXT j, i
' Вот тут вот она вылазит
FOR i = 1 TO 5
FOR j = 1 TO 5
IF y(i, j) THEN ' как задать условие, я что-то тоже не додумался
k(i) = k + 1
z(i, j) = y(i, j) / k(i)
END IF
IF k = 0 THEN
z(i, j) = z(0, j)
END IF
NEXT j, i
PRINT y(i, j), z(i, j)
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
PolPoll
сообщение 14.12.2008, 15:41
Сообщение #4


:)


Группа: Главные администраторы
Сообщений: 5 858
Регистрация: 24.11.2005
Из: Москва
Пользователь №: 5 327



Цитата
NEXT j, i
' Вот тут вот она вылазит

Код
NEXT j
NEXT i


Цитата
Вычислить элементы новой матрицы Z (5, 5) по правилу Z(ij)=Yij/Ki, где Кi - количество положительных элементов i-той строки. Если в i-той строке положительных элментов нет, то i-тая строка в матрице Z должна быть заполнена нулями

Код
...
FOR i = 1 TO 5
'
k = 0
FOR j = 1 TO 5
IF y(i, j)>0 THEN k = k + 1
NEXT j
'
IF k>0 THEN
'
FOR j = 1 TO 5
z(i, j) = y(i, j) / k
NEXT j
'
ELSE
'
FOR j = 1 TO 5
z(i, j) = 0
NEXT j
'
END IF
'
NEXT i
...


Цитата
PRINT y(i, j), z(i, j)
Массивы выводятся в циклах - поэлементно, как и вводятся


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
matsod
сообщение 14.12.2008, 17:08
Сообщение #5


Пользователь


Группа: Пользователи
Сообщений: 3
Регистрация: 14.12.2008
Пользователь №: 21 155



Огромное спасибо, допустил такие ламерские ошибки. блин.
Спасибо еще раз
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 23.5.2012, 3:46