0 / 0 / 1
Регистрация: 10.01.2016
Сообщений: 31
1

Построение динамических таблиц

10.01.2016, 15:01. Показов 1410. Ответов 13
Метки нет (Все метки)

Задача: для различных m,n , где n- количество строк, m- кол-во столбцов нужно создать таблицу размером mxn. Таблица строится следующим образом:
Миниатюры
Построение динамических таблиц  
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.01.2016, 15:01
Ответы с готовыми решениями:

Построение динамических таблиц в VBA
Задача: для различных m,n , где n- количество строк, m- кол-во столбцов нужно создать таблицу...

Создание динамических таблиц
Добрй день. Такая тема...создаю конструктор html таблиц. Использую knockout. ячека...

Создание динамических таблиц
Столкнулась с проблемой при создании таблицы. Мне нужно, чтобы после того как пользователь ввел в...

Построение динамических рисунков
Написать программу, которая выводит на экран изображение движущегося треугольника.

13
0 / 0 / 1
Регистрация: 10.01.2016
Сообщений: 31
10.01.2016, 15:02  [ТС] 2
код, который пришел мне в голову:
QBasic/QuickBASIC
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
CLS;
DIM A (i,j)
n = InputBox (“row”)
m = InputBox (“colomn”)
IF n = m
    FOR i = 1 TO n
    n = n-1;
    FOR j = 1 TO m
    A(i,j) = InputBox (INPUT element ”& i,j)
End_if;
 
IF 2*n = m
    FOR i = 1 TO n
    FOR j = 1 TO m
    A(i,j) = InputBox (INPUT element ”& i,j)
    m = m – 2;
IF 2*n-1 = m    
    FOR i = 1 TO n
        IF i = n
        A(i,j) = InputBox (INPUT element ”& i,j)
        n = n – 1;
        end_if
    FOR j = 1 TO m
    A(i,j) = InputBox (INPUT element ”& i,j)
    m = m – 2;

Возможно есть более интересные и правильные варианты решения,
подскажите, пожалуйста
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
10.01.2016, 18:21 3
Мне не совсем понятно, что надо сделать. Код совершенно неверный.
Не могли бы вы привести простой пример. Что дано и куда поместить.
0
0 / 0 / 1
Регистрация: 10.01.2016
Сообщений: 31
10.01.2016, 18:30  [ТС] 4
m,n- количество строк и столбцов соответственно.
нужно построить таблицу, форма которой будет зависеть от введенных m и n.
если n=m таблица будет выглядеть как первая на рисунке
если 2*n=m, то как 2 таблица
если (2*n-1)=m, то как 3 таблица.

я немного изменила код, может быть, этот будет верен:
QBasic/QuickBASIC
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
CLS;
DIM A (i,j)
n = InputBox (“row”)
m = InputBox (“colomn”)
IF n = m
FOR j = 1 TO m
FOR i = 1 TO n
        A(i,j) = InputBox (INPUT element ”& i,j)   
        NEXT i
    n=n-1;
    NEXT j
 
END IF
    
IF 2*n = m
    FOR j = 1 TO m
            FOR i = 1 TO n
            A(i,j) = InputBox (INPUT element ”& i,j)
            NEXT i
            FOR i = 1 TO n          
                        A(i,(j+1)) = InputBox (INPUT element ”& i,(j+1))
            NEXT i
    NEXT j
IF 2*n-1 = m    
    WHILE j = 1
        FOR i= 1 TO n
        A(i,j) = InputBox (INPUT element ”& i,j)   
        NEXT i
        
    END WHILE
FOR j = 2 TO m
        FOR i = 1 TO n
        A(i,j) = InputBox (INPUT element ”& i,j)
        
        NEXT i
        FOR i = 1 TO n          
                A(i,(j+1)) = InputBox (INPUT element ”& i,(j+1))
        NEXT i
NEXT j
end_if
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
10.01.2016, 19:01 5
Разберемся с кодом
Ваш код: n = InputBox (“row”)
Мой код: INPUT "row"; n

Ваш код: if n = m
Мой код: IF n = m THEN

Ваш код: n=n-1;
Мой код: n = n - 1

Ваш код:
while j = 1
End while

Мой код:
DO WHILE J = 1
LOOP

Ваш код: end_if
Мой код: END IF

Ваш код: A(i,(j+1))
Мой код: A(i, j +1)

Пожалуй все.
Массив A(i, j) надо определять после ввода чисел его размерности
То есть так: DIM A(M, N)
(M и N должны быть определены раньше)
1
0 / 0 / 1
Регистрация: 10.01.2016
Сообщений: 31
10.01.2016, 19:08  [ТС] 6
Спасибо, исправила!
если интересно, через несколько минут будет вторая часть этого "марлезонского балета"
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
10.01.2016, 19:30 7
Используйте теги. Перед вами куча английских слов.
В нижней строке найдите слово QBASIC и нажмите на него
У вас появятся теги. Только скобки будут не угловые, а квадратные.
(типа так [QBASIC] дальше не пишу, так как правильные теги невидимы)
<QBASIC>

Здесь ваш код

</QBASIC>

Добавлено через 9 минут
В вашем коде отсутствует вывод информации
Для вывода используют операторы
LOCATE I, J (1 <= I <=25, 1 <= J <= 80)
I - номер строки
J - номер столбца
Этот оператор помещает курсор в любое место экрана
PRINT N - Печатает число N
PRINT "ABCDE" - печатает строку символов ABCDE
0
0 / 0 / 1
Регистрация: 10.01.2016
Сообщений: 31
10.01.2016, 19:38  [ТС] 8
точно, я не заметила сначала
Скажите, как правильно вывести на экран массив A(m,n)?
Подойдет ли оператор Locate A(i,j)? и как правильно его написать?(необходимо вывести в форме таблицы все столбцы и строки+ потом добавить различные вычисления как дополнительный столбец)
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
10.01.2016, 19:56 9
Примерно так
Запустите свою программу и посмотрите, что получится.

QBasic/QuickBASIC
1
2
3
4
5
6
7
8
DIM A(M, N) AS INTEGER ' Указывает тип переменной
 
FOR I = 1 TO N 
FOR J = 1 TO M
   LOCATE I, 5*J 
   PRINT USING " ####"; A(I, J)
NEXT J
NEXT I
Оператор USING в данном случает выравнивает числа
Но у него есть и другие способности.

Добавлено через 2 минуты
Добавить данные легко
Примените LOCATE и печатайте что хотите.
1
0 / 0 / 1
Регистрация: 10.01.2016
Сообщений: 31
10.01.2016, 22:12  [ТС] 10
Спасибо большое за подсказки!
Маленький вопрос, как правильно задать одномерный массив?
Dim A(n) as integer?

и не является ли ошибкой написать
A(i,j) = InputBox (“input element ”& i,j) ?
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
11.01.2016, 10:21 11
EkaterinaTsi
Массив вы задаете правильно. Только его размерность
число n - должно быть задано раньше самого массива.
Ваш код
A(i,j) = InputBox (“input element ”& i,j) ?
Неверный.
1
0 / 0 / 1
Регистрация: 10.01.2016
Сообщений: 31
11.01.2016, 11:03  [ТС] 12
geh, n я задала в самом начале программы:
Input "row"; n
я думаю, этого достаточно,верно?

самая главная проблема в том, что всю программу нужно было сделать в VBA и я не знаю что обычно используют для подобных программ формы или модули?
0
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
11.01.2016, 11:23 13
EkaterinaTsi
Да, верно одного определения хватит
Ваш второй вопрос.
VBA не слишком сильно отличается от VB.
То есть можно использовать форму. Но вы можете зайти
на их форум и прямо спросить об этом. Создайте тему и
Вопрос: куда поместить код. И не забудьте спросить
Нет ли в коде ошибок? Я не специалист в VBA.
УДАЧИ ВАМ!
1
4954 / 1627 / 408
Регистрация: 25.04.2010
Сообщений: 4,484
Записей в блоге: 1
12.01.2016, 17:11 14
так как правильные теги невидимы
[NOPARSE] пишем то, что форуму не нужно обрабатывать [/NOPARSE]
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.01.2016, 17:11
Помогаю со студенческими работами здесь

Построение динамических изображений
Помогите сделать растущий круг и круги на воде. Немного не догоняю как это. Помогите плииз. Заранее...

Django: Обработка динамических таблиц
Доброго времени суток, Я делаю сайт с заявками на пропуск людей. То есть на странице есть...

Построение динамических структур данных
Использование структурных ячеек, которые собственноручно создаются пользователем с помощью средств...

Построение динамических графиков в режиме реального времени
Здравствуйте,как можно построить график(тренд) такого разностного уравнения(уравнение прилагается)...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru