Demonic, перепечатай мануал из Adobe Premiere )
Demonic, перепечатай мануал из Adobe Premiere )
Дана задача. Суть заключается в следующем:
дана матрица А размером nxn;
составить из матрицы Аодномерный массив В в указанном порядке
У меня кое-что получилось, но несовсем то, что надо мне(((
Вот текст моей программы:
cls
'vvod razmernosti matrici A
input"n=",n
'vvodrazmernosti matrici B
m=(n^2+n)/2
'formirovanie massiva A i B
dim a(n,n),b(m)
'zadanie elementov massiva A
for i=1 to n
for j=1 to n
a(i,j)=int(RND(1)*20-10)
next j,i
'Marsrutizaciya massiva A i sozdanie massiva B
k=0
'nachalo zadaniya
'vozmojni oshibki i drugoe uslovie
for j=1 to n
for i=j to 1 step -1
k=k+1
b(k)=a(i,j)
next i,j
'konec zadaniay cikla
print "matrica A:"
for i=1 to n
for j=1 to n
print a(i,j);" ";
next j
next i
print "Massiv B:"
for k=1 to m
print b(k);" ";
next k
end
Пример её работы
n=5
matrica A
9 -6 0 -8 7
-10 -1 9 -4 5
3 7 -4 2 6
3 -1 9 -6 9
1 9 -8 -1 9
matrica B
9 -1 -6 -4 9 0 -6 2 -4 -8 9 9 6 5 7
Мне нужно сделать немного по-другому, чтобы после выполнения программы вот что получилось:
9 -6 -1 -4 9 0 - 8 -4 2 -6 9 9 6 5 7
Я не совсем поняла задание. Эти стрелочки? По столбцам с n-го элемента первого столбца? Почему стрелки разной длины?
Взмывает в небо за моим за окном
Непобеждённая страна.
(Е. Летов)
по столбцам..разной длины так как из первого столбца берёшь один элементсверху, со второго 2 сверху и так далее, пока до n не дойдёт, и тамвсе элементы столбца не возьмутся
при этом чередуется направление. в котором берут элементы
в примере я написала, что у меня получилось при запуске моей программы=)
Strange&BeautyElf
Алгоритм выборки непонятен. Нарисуй нормально матрицу А, чтобы была видна решётка, и опиши нормально алгоритм выборки из матрицы А.
Взмывает в небо за моим за окном
Непобеждённая страна.
(Е. Летов)
Frau_Muller
выбираются элементы a11, a12, a22, a33, a23, a13, a14, a24, ...
Понятно, почему у тебя она неправильно считает... Ты же всегда начинаешь снизу вверх, а тебе нужно поочередно: то сверху, то снизу.Сообщение от Strange&BeautyElf
Вот так, возможно, будет работать.for j=1 to n step 2
for i=j to 1 step -1
k=k+1
b(k)=a(i,j)
next i
for i=1 to j+1
k=k+1
b(k)=a(i,j+1)
next i
next j
Ленивый дурак - это полбеды; деятельный дурак - это для всех головная боль, но нет ничего хуже, чем дурак с инициативой, да ещё и при должности.
Trotil
огромнейшее спасибо!!!!!!Всё работает=)
Strange&BeautyElf
Увы, не будет это правильно работать в случае нечетных n. Будет вылезать за рамки выделенной памяти. Добавь малюсенькое условие перед вторым внутреним циклом...
Ленивый дурак - это полбеды; деятельный дурак - это для всех головная боль, но нет ничего хуже, чем дурак с инициативой, да ещё и при должности.
Может поэтому она зависала? она выполняется, но в конце виснет.цикл проверки на чётность и нечётность? можно просто расширить количество элементов b - до 1000 иработать будет, ьтак у многих в ариантах было, что выходило за рамки
b(1000)
Strange&BeautyElf
Я не помню, что происходит у Бейсика в таких случаях, если честно. Вполне возможно, что и зависание...
Ленивый дурак - это полбеды; деятельный дурак - это для всех головная боль, но нет ничего хуже, чем дурак с инициативой, да ещё и при должности.
Люди, помогите с задачками по информатике 8-го класса в программе Turbo Pascal, плиз!!!
1. Написать программу, которая вычисляет частное от деления двух чисел. Программа должна проверять правильность введенных пользователем данных и, если они неверные (делитель равен нулю), выдать сообщение об ошибке.
2. Написать программу решения квадратного уравнения. Программа должна проверять правильность исходных данных и в сучае, когда коэффициент при второй степени неизвестного раве нулю, выводить соответствующее сообщение.
3. Написать программу, которая проверяет, делится ли на три целое число, введенное с клавиатуры.
4. Написать программу, которая вычисляет сумму первых n членов ряда 1,2,3,5,7,... Количество суммируемых членов ряда задается во время работы программы.
Это простые числа?Сообщение от Мышка
Ленивый дурак - это полбеды; деятельный дурак - это для всех головная боль, но нет ничего хуже, чем дурак с инициативой, да ещё и при должности.
Trotil
Вот именно, дело в том, что я вообще ничего не понимаю.
Скорее всего нет.
Единица - не простое число...
Если введены 73 и 13, что должна выдать программа?Сообщение от Мышка
Ленивый дурак - это полбеды; деятельный дурак - это для всех головная боль, но нет ничего хуже, чем дурак с инициативой, да ещё и при должности.
Trotil
Программа должна выдать результат от деления, т.е 5,615384.... Ну, я так думаю.
Idea and creation: fuldon (aka miXei) © 2000-2015
Powered by vBulletin® Version 4.2.6 by vBS Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. |