2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Программирование VBA. Вложенный цикл, цикл с разветвлением.
Сообщение19.05.2014, 19:40 


04/03/14
5
Здравствуйте :)
Застопорилась на теме циклов, а именно вложенного цикла. Прошу помощи в написании программки для следующего задания:
Составить программу вычисления суммы и таблицы значений:
$$z=\left \{ \begin{array}{l} \sqrt(x^3+y^2)\ ,\ если  x^3+y^2>0 \\
x^3+y^2\ ,\ если x^3+y^2<0 \end{array}
\right.
$$
где переменная $x$ изменяется в интервале $-5<x<5$ с шагом $h=0,8$; $y$ принимает значения: 4; 0,1; 9; 5; 998.


Загвоздка как раз таки в составлении таблицы, не знаю как заставить программу мне это грамотно вывести.
Сырая заготовка выглядит так:

Код:
For Each y In Array(4, 0.1, 9, 5, 998)
For x = -5 To 5 Step 0.8
x = Sheets("лист2").Cells(2, 2)
Z = x ^ 3 + y ^ 2
If Z > 0 Then Z = Sqr(Z)
Sheets("лист2").Cells(2, 2) = Z
Next
Next
End Sub


Собственно после выполнения выводит в ячейку (2,2) одно значение $Z$. Как изменить/что добавить, чтобы все оформилось в таблицу для каждого из меняющихся $y$ и $x$?

 Профиль  
                  
 
 Re: Программирование VBA. Вложенный цикл, цикл с разветвлением.
Сообщение19.05.2014, 20:53 
Админ форума
Аватара пользователя


19/03/10
8952
 i  Тема перемещена в Карантин.

1. Запишите формулы в соответствии с требованиями Правил форума, т.е. в $\TeX$.
Краткие инструкции можно найти здесь: topic8355.html и topic183.html.
Кроме этого, в теме Видео-пособия для начинающих форумчан можно посмотреть видео-ролик "Как записывать формулы".

2. Приведите свои попытки решения задач и объясните, что конкретно вызывает затруднения.

После того как исправите сообщение, сообщите об этом в теме Сообщение в карантине исправлено.

 Профиль  
                  
 
 Posted automatically
Сообщение19.05.2014, 23:11 
Админ форума
Аватара пользователя


19/03/10
8952
 i  Тема перемещена из форума «Карантин» в форум «Программирование»

 Профиль  
                  
 
 Re: Программирование VBA. Вложенный цикл, цикл с разветвлением.
Сообщение19.05.2014, 23:29 
Заслуженный участник


02/08/11
7013
Добавьте пару счётчиков - один для столбца и один для строки.
Код:
Dim CellColumn As Integer
CellColumn = 2
For Each y In Array(4, 0.1, 9, 5, 998)

    Dim CellRow As Integer
    CellRow = 2
    For x = -5 To 5 Step 0.8

        x = Sheets("лист2").Cells(2, 2)
        Z = x ^ 3 + y ^ 2
        If Z > 0 Then Z = Sqr(Z)
        Sheets("лист2").Cells(CellRow, CellColumn) = Z

        CellRow = CellRow + 1
    Next

    CellColumn = CellColumn + 1
Next

End Sub

(Не знаю в каком порядке в Cells() нужно передавать строку и столбец - возможно надо поменять).

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group