Логотип игрового форума RF-Cheats.ru    
Новости онлайн игр Обход античитов Чёрный рынок Реклама и привилегии Разработка читов Арбитраж

Регистрация Бан-лист Сообщество ПОПУЛЯРНОЕ
Вернуться   RF-Cheats.ru - форум читеров и ботоводов > > >

Взлом и программирование

: Аспекты программирования при реализации различных методик взлома.
Читы и обход фроста для RF Online без хайдаБоты и читы для Perfect World бесплатно без хайдаМоды и читы для World of Tanks (WoT) бесплатно без хайдаМоды и читы для Armored Warfare бесплатно без хайдаБоты и читы для DOTA 2 бесплатно без хайдаБоты и читы для Black Desert Online бесплатно без хайдаЧиты на ArcheAge бесплатно без хайдаЧиты для Warface бесплатно без хайдаВзлом ВКонтакте и ОдноклассниковСписок разделов со всеми играмиЧиты для онлайн игр






Ответ
 
Опции темы
Старый 13.06.2013, 00:48   #1
Lotoros
Освоившийся
Аватар для Lotoros
OFFLINE
Регистрация: 24.12.2008
Сообщений: 30
Благодарностей:
59 всего
Мнения: + 86
Репутация: 178

Small Basic-циклы


Ребят,я,видимо,не понимаю какую-то простую вещь,которая лежит в принципах циклов:
Пишу программу,которая считает 10 элементов,поместит их в массив,отсортирует чётные/нечётные и выдаст их сумму.

Код:
For i=1 To 10'Цикл вывода сообщения о вводе элемента массива
TextWindow.WriteLine("Введите "+i+" элемент массива")
a[i]=TextWindow.ReadNumber()
EndFor
For i=1 To 10'Цикл создания массива из целых частей после деления на 2
b[i]=Math.Remainder(a[i],2)
EndFor
For i=1 To 10'Цикл условий на остаток и суммы
If b[i]=0 Then
For i=1 To 10
s=0
s=s+a[i]
EndFor
Else
For i=1 To 10
k=0
k=k+a[i]
EndFor
EndIf

EndFor
TextWindow.Write("Сумма чётных="+s)
TextWindow.Write("Сумма нечётных="+k)

Проблема в том,что в итоге программа выводит только последние чётные/нечётные элементы массива.
Мои попытки устранить проблему:
1)Я ввёл новый массив b[i],в который помещается остаток от деления a[i] элемента массива.
2)Теперь в каждом условии свой цикл

Всё это не помогло. Что я не понимаю?

Я "Спасибо" говорю,а не тыкаю.
 
Ответить с цитированием


Старый 14.06.2013, 00:44   #2
Lotoros
Освоившийся
Аватар для Lotoros
OFFLINE
Регистрация: 24.12.2008
Сообщений: 30
Благодарностей:
59 всего
Мнения: + 86
Репутация: 178

For i=1 To 10'Цикл вывода сообщения о вводе элемента массива
TextWindow.WriteLine("Введите "+i+" элемент массива")
a[i]=TextWindow.ReadNumber()
EndFor
k=0
s=0

For i=1 To 10'Цикл условий на остаток и суммы
If a[i]=Math.Remainder(a[i],2)=0 Then


s=s+a[i]

Else


k=k+a[i]

EndIf

EndFor
TextWindow.Write("Сумма чётных="+s)
TextWindow.Write("Сумма нечётных="+k)

Теперь прога выдаёт просто сумму всех элментов массива

Я "Спасибо" говорю,а не тыкаю.
 
Ответить с цитированием
Старый 14.06.2013, 00:58   #3
[Zeto]
Проверенный продавец
Аватар для [Zeto]
OFFLINE
Регистрация: 06.07.2012
Сообщений: 698
Благодарностей:
1,011 всего
Мнения: + 3802
Репутация: 3034
Отправить сообщение для [Zeto] с помощью Skype™

Цитата:
Сообщение от Lotoros Посмотреть сообщение
For i=1 To 10'Цикл вывода сообщения о вводе элемента массива
TextWindow.WriteLine("Введите "+i+" элемент массива")
a[i]=TextWindow.ReadNumber()
EndFor
For i=1 To 10'Цикл создания массива из целых частей после деления на 2
b[i]=Math.Remainder(a[i],2)
EndFor
For i=1 To 10'Цикл условий на остаток и суммы
If b[i]=0 Then
For i=1 To 10
s=0
s=s+a[i]
EndFor
Else
For i=1 To 10
k=0
k=k+a[i]
EndFor
EndIf

EndFor
TextWindow.Write("Сумма чётных="+s)
TextWindow.Write("Сумма нечётных="+k)
то что выделенно красным объявить перед циклом, поскольку у тебя на каждом шаге идёт зануление и прибавление последующего элемента.
 
Ответить с цитированием
Старый 14.06.2013, 01:59   #4
Lotoros
Освоившийся
Аватар для Lotoros
OFFLINE
Регистрация: 24.12.2008
Сообщений: 30
Благодарностей:
59 всего
Мнения: + 86
Репутация: 178

Цитата:
Сообщение от [Zeto] Посмотреть сообщение
то что выделенно красным объявить перед циклом, поскольку у тебя на каждом шаге идёт зануление и прибавление последующего элемента.
Согласен,я уже поправил. Посмотри пожалуйста код выше.

Я "Спасибо" говорю,а не тыкаю.
 
Ответить с цитированием
Старый 14.06.2013, 02:02   #5
[Zeto]
Проверенный продавец
Аватар для [Zeto]
OFFLINE
Регистрация: 06.07.2012
Сообщений: 698
Благодарностей:
1,011 всего
Мнения: + 3802
Репутация: 3034
Отправить сообщение для [Zeto] с помощью Skype™

Цитата:
Сообщение от Lotoros Посмотреть сообщение
Согласен,я уже поправил. Посмотри пожалуйста код выше.
я бейсик не знаю, но скорее всего ошибка тут
Цитата:
if a[i]=Math.Remainder(a[i],2)=0
на с++ это скорее всего выглядило бы так:
Цитата:
if fmod(a[i],2)==0

Последний раз редактировалось [Zeto]; 14.06.2013 в 02:10.
 
Ответить с цитированием
Старый 14.06.2013, 02:06   #6
Lotoros
Освоившийся
Аватар для Lotoros
OFFLINE
Регистрация: 24.12.2008
Сообщений: 30
Благодарностей:
59 всего
Мнения: + 86
Репутация: 178

Цитата:
Сообщение от [Zeto] Посмотреть сообщение
я бейсик не знаю, но скорее всего ошибка тут
Дело в том,что вроде программа распознаёт четные/нечетные. То есть команда верная. Только она выводит только последние элементы массива,вместо суммы. Вобщем сам разберусь завтра

Спасибо большое!

Я "Спасибо" говорю,а не тыкаю.
 
Ответить с цитированием
Старый 14.06.2013, 02:12   #7
[Zeto]
Проверенный продавец
Аватар для [Zeto]
OFFLINE
Регистрация: 06.07.2012
Сообщений: 698
Благодарностей:
1,011 всего
Мнения: + 3802
Репутация: 3034
Отправить сообщение для [Zeto] с помощью Skype™

Цитата:
Сообщение от Lotoros Посмотреть сообщение
Дело в том,что вроде программа распознаёт четные/нечетные. То есть команда верная. Только она выводит только последние элементы массива,вместо суммы. Вобщем сам разберусь завтра

Спасибо большое!
насколько я понял, там берётся a[i] если он равен остатку от деления, а остаток от деления равен 0, то условие выполняется. Но это ведь бред, т.е. чтобы условие сработало, нужен элемент массива равный 0
 
Ответить с цитированием
Сказали спасибо:
Lotoros (14.06.2013)
Старый 14.06.2013, 02:16   #8
Lotoros
Освоившийся
Аватар для Lotoros
OFFLINE
Регистрация: 24.12.2008
Сообщений: 30
Благодарностей:
59 всего
Мнения: + 86
Репутация: 178

Цитата:
Сообщение от [Zeto] Посмотреть сообщение
насколько я понял, там берётся a[i] если он равен остатку от деления, а остаток от деления равен 0, то условие выполняется. Но это ведь бред, т.е. чтобы условие сработало, нужен элемент массива равный 0
В самом деле,вот где ошибка. Просто непросто я все время I элемент сравниваю с 0)

Спасибо!

Я "Спасибо" говорю,а не тыкаю.
 
Ответить с цитированием
Старый 16.06.2013, 01:12   #9
Lotoros
Освоившийся
Аватар для Lotoros
OFFLINE
Регистрация: 24.12.2008
Сообщений: 30
Благодарностей:
59 всего
Мнения: + 86
Репутация: 178

Вдруг кому-то понадобиться:
Код рабочей программы в MSB. Рассчёт суммы чётных и нечётных чисел из 10.
k=0'сумма чётных
s=0'сумма нечётных
For i=1 To 10
TextWindow.WriteLine("Введите "+i+" число ")
a[i]=TextWindow.ReadNumber()
remainder[i]=Math.Remainder(a[i],2)
If remainder[i]=0 then
k=k+a[i]
Else
s=s+a[i]
EndIf
EndFor
TextWindow.WriteLine("Cумма чётных= "+k)
TextWindow.WriteLine("Сумма нечётных="+s)

Я "Спасибо" говорю,а не тыкаю.
 
Ответить с цитированием
Ответ



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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Мир танков | Проект "Армата" | ArcheAge | Black Desert | РФ Онлайн | Айон | Майнкрафт | Браузерные игры
Элдер скролс | Р2 Онлайн | Реквием Онлайн | ПУБГ | Роял Квест | ГТА Санадреас | Контра | Дота 2
Мир кораблей | Лост Арк | Arma2 DayZ mod | The War Z | Карос: Начало | Tera Online
Читы для всех Онлайн-игр