Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.10.2007, 23:09   #1
Ванек
Пользователь
 
Регистрация: 13.10.2007
Сообщений: 10
По умолчанию Задачи по QBasic

Собсно:
1. Дана матрица размерности MxN. Подсчитать количество положительных, отрицательных и нулевых элементов матрицы, а также суммы положительных, отрицательных и нулевых элементов.
2.
Дан номер некоторого года (положительное целое число). Вывести число дней в этом году, учитывая, что обычный год насчитывает 365 дней, а високосный — 366 дней. Високосным считается год, делящийся на 4, за исключением тех годов, которые делятся на 100 и не делятся на 400 (например, годы 300, 1300 и 1900 не являются високосными, а 1200 и 2000 — являются).
ПС:пожалйуйссста!
Ванек вне форума Ответить с цитированием
Старый 14.10.2007, 14:29   #2
Ванек
Пользователь
 
Регистрация: 13.10.2007
Сообщений: 10
По умолчанию

ну,что неужели никто в QB не работал?
Ванек вне форума Ответить с цитированием
Старый 14.10.2007, 19:08   #3
KORT
Вот я и
Форумчанин
 
Аватар для KORT
 
Регистрация: 07.04.2007
Сообщений: 501
По умолчанию

Цитата:
Сообщение от Ванек Посмотреть сообщение
ну,что неужели никто в QB не работал?
Работать мало, он же для школьников. И многие не работают в нем....
Исходники программ - http:\\www.kort.3dn.ru
KORT вне форума Ответить с цитированием
Старый 14.10.2007, 21:10   #4
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

На бейсике я тебе написать не смогу, так как я его уже не помню, я тебе напишу на смеси Паскаля с русским языком, а перевести это на Бейсик не так уж сложно.

:= в Паскале присваивание
Переменные (до цикла все должны быть равны нулю):
positivcount
negativcount
zerocount
positivsum
negativsum
сумму нулевых можно не считать, и так понятно что ноль будет

нужно объявить матрицу и заполнить ее
matrix: array[1..M,1..N] of integer = (тут элементы матрицы);

for i := 1 to M do
for j := 1 to N do
begin

if matrix[i,j] > 0 then
begin
positivcount:=positivcount+1;
positivsum:=positivsum+matrix[i,j];
end;

if matrix[i,j] < 0 then
begin
negativcount:=negativcount+1;
negativsum:=negativsum+matrix[i,j];
end;

if matrix[i,j] = 0 then zerocount:=zerocount+1;

end;
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 14.10.2007, 21:35   #5
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

вторая вообще простая

if делится на 4 then
begin
if (делится на 100) and (не делится на 400) then выводим: невысокосный
else выводим: высокосный;
end
else выводим: невысокосный;

"делится на 4" можно записать так: N mod 4 = 0
есть в бейсике оператор mod?
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог

Последний раз редактировалось mutabor; 14.10.2007 в 21:38.
mutabor вне форума Ответить с цитированием
Старый 14.10.2007, 21:39   #6
Ванек
Пользователь
 
Регистрация: 13.10.2007
Сообщений: 10
По умолчанию

Цитата:
Сообщение от mutabor Посмотреть сообщение
есть в бейсике оператор mod?
есть
вторая работает,БОЛЬШОЕ СПАСИБО!
С первой придется посидеть
Ванек вне форума Ответить с цитированием
Старый 15.10.2007, 21:35   #7
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

вот еще держи, моя единственная программа на бейсике (QB), нашел в закромах, может пригодится

y = 100
z = 99
SCREEN 12
DO WHILE 1
x = 100
z = z + 1
w = z
FOR i = 0 TO 150
x = x + 1
w = w + 1
IF i >= 0 AND i <= 50 THEN COLOR 1
IF i > 50 AND i <= 100 THEN COLOR 4
IF i > 100 THEN COLOR 7
y = SIN(w * .04) * 10 + 110
LINE (x, y)-(x, y + 100)
COLOR 0
LINE (x, 100)-(x, y)
LINE (x, 220)-(x, y + 100)
NEXT
LOOP

P.S. на всякий случай, прервать программу Ctrl+Break
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 16.10.2007, 09:11   #8
vit_galina
Пользователь
 
Регистрация: 15.10.2007
Сообщений: 19
По умолчанию

Данные вводятся с клавиатуры или определяются случайным образом, уточни и я напишу тебе программу. В ней ничего нет сложного, просто я Бейсик уже подзабыла.
vit_galina вне форума Ответить с цитированием
Старый 16.10.2007, 10:09   #9
vit_galina
Пользователь
 
Регистрация: 15.10.2007
Сообщений: 19
По умолчанию Работа с 2-х мерным массивом на Qbasic

5 CLS
10 REM Работа с элементами 2-х мерного массива
20 DIM A(20, 20)
30 REM Ввод исходных данных
40 INPUT " Vvedite kol-во strok N, stolbcov M"; N, M
50 PRINT "Vvedite elementy A:"
60 FOR I = 1 TO N
70 FOR J = 1 TO M
80 INPUT A(I, J)
90 NEXT J
100 NEXT I
110 REM Вывод массива построчно
120 PRINT " Elementy A:"
130 FOR I = 1 TO N
140 FOR J = 1 TO M
150 PRINT A(I, J);
160 NEXT J: PRINT
170 NEXT I
180 REM Присвоение переменной начальных значений
190 REM количество полож, отрицат и нулевых элементов: KP, KO,KNUL
195 REM Суммы полож, отрицат и нулевых элементов: SP, SO,SNUL
200 KP = 0: SP = 0
210 KO = 0: SO = 0
220 KNUL = 0: SNUL = 0
230 REM Вычисления
325 FOR I = 1 TO N
330 FOR J = 1 TO M
340 IF A(I, J) < 0 THEN KO = KO + 1: SO = SO + A(I, J): GOTO 360
350 IF A(I, J) > 0 THEN KP = KP + 1: SP = SP + A(I, J) ELSE KNUL=KNUL+1
360 NEXT J
370 NEXT I
375 REM
380 PRINT " KNUL="; KNUL
390 PRINT " POLOG. ELEM KP="; KP; "SP="; SP
400 PRINT " OTRICAT. ELEM KO="; KO; "SO="; SO
410 END
vit_galina вне форума Ответить с цитированием
Старый 20.10.2007, 21:09   #10
Ванек
Пользователь
 
Регистрация: 13.10.2007
Сообщений: 10
По умолчанию

mutabor ,vit_galina,спасибо !
Вы мне очень помогли!
Ванек вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Qbasic, шифрование Лицеистка Помощь студентам 11 31.01.2008 17:14
лабораторная по Qbasic MsVlarbuzZ Помощь студентам 5 09.01.2008 15:07
Help me on QBasic. Анимация. toad88 Помощь студентам 2 16.11.2007 21:58
Нужно СРОЧНО решить нетрудные задачи по QBasic Final Фриланс 2 20.06.2007 22:29
3 задачи на QBasic PoNika Помощь студентам 3 11.06.2007 13:02