Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 | 2 |

 

  Вопрос: Пожалуйста! Помогите! что делать?!) Добавлено: 23.07.08 13:07  

Автор вопроса:  yan
задание звучит так
за один просмотр последовательности целых чисел определить является ли она арифметической прогрессией?
я что-то пытался делать, мне кажется какая-то глупость получается.. посоветуйте, пожалуйста!!!

Ответить

  Ответы Всего ответов: 21  

Номер ответа: 1
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #1 Добавлено: 23.07.08 13:09
мне кажется какая-то глупость получается..
Ну и показал бы глупость. Может только кажется? По голове то не дадутю:)

Ответить

Номер ответа: 2
Автор ответа:
 yan



Вопросов: 1
Ответов: 11
 Профиль | | #2 Добавлено: 23.07.08 13:25
я вообще ничего не помню((

задание я так понял:

Дано: массив a(1....n)
x=0 '(может это счетчик)
for i = 2 to (n-1)
if (ai+1) - ai <> ai - ai-1
then x = x + 1

next i

if x = 0 then "последовательность является прогрессией" :)

Ответить

Номер ответа: 3
Автор ответа:
 KiZ



Вопросов: 27
Ответов: 68
 Профиль | | #3 Добавлено: 23.07.08 13:59
А я думаю, не все так просто))) Ведь если числа перемешаны.... ))
и Что считается одним просмотром? Забить их в массив и смотри сколько хочешь)

Ответить

Номер ответа: 4
Автор ответа:
 yan



Вопросов: 1
Ответов: 11
 Профиль | | #4 Добавлено: 23.07.08 14:01
да хоть как-нибудь бы.. не знаете как это языком выразить?

Ответить

Номер ответа: 5
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #5 Добавлено: 23.07.08 14:19
да хоть как-нибудь бы.. не знаете как это языком выразить?
Не кипятись, рано тебе еще.
Dim arr1
   Dim d1 As Long
   Dim d2 As Long
   Dim flg As Boolean
   
   arr1 = Array(0, 3, 5, 7, 9)
   flg = True
   For i = LBound(arr1) + 1 To UBound(arr1) - 1
     d1 = arr1(i) - arr1(i - 1)
     d2 = arr1(i + 1) - arr1(i)
     If d1 <> d2 Then
       flg = False
       MsgBox "Не арифм. прогрессия"
       Exit For
     End If
   Next i
   If flg Then MsgBox "Арифм. прогрессия"

примерно так

Ответить

Номер ответа: 6
Автор ответа:
 yan



Вопросов: 1
Ответов: 11
 Профиль | | #6 Добавлено: 23.07.08 15:12
спасибо.. спасибо.. большое спасибо..
и в конце End надо?

Ответить

Номер ответа: 7
Автор ответа:
 yan



Вопросов: 1
Ответов: 11
 Профиль | | #7 Добавлено: 23.07.08 15:16
invalid outside procedure

Ответить

Номер ответа: 8
Автор ответа:
 yan



Вопросов: 1
Ответов: 11
 Профиль | | #8 Добавлено: 23.07.08 15:20
Андрей, он на нуле спотыкается(

Sub zzzz()
Dim arr1
   Dim d1 As Long
   Dim d2 As Long
   Dim flg As Boolean
   
   arr1 = Array(0, 3, 5, 7, 9)
   flg = True
   For i = LBound(arr1) + 1 To UBound(arr1) - 1
     d1 = arr1(i) - arr1(i - 1)
     d2 = arr1(i + 1) - arr1(i)
     If d1 <> d2 Then
       flg = False
       MsgBox "Не арифм. прогрессия"
       Exit For
     End If
   Next i
   If flg Then MsgBox "Арифм. прогрессия"
End Sub

Ответить

Номер ответа: 9
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #9 Добавлено: 23.07.08 15:27
Ну не знаю. У меня работает.

Ответить

Номер ответа: 10
Автор ответа:
 yan



Вопросов: 1
Ответов: 11
 Профиль | | #10 Добавлено: 23.07.08 15:29
Андрей! Такой же код?

Ответить

Номер ответа: 11
Автор ответа:
 yan



Вопросов: 1
Ответов: 11
 Профиль | | #11 Добавлено: 23.07.08 15:30
arrl не надо писать As Integer или Long

Ответить

Номер ответа: 12
Автор ответа:
 yan



Вопросов: 1
Ответов: 11
 Профиль | | #12 Добавлено: 23.07.08 15:31
блин, я проверяю в VB из Excel

Ответить

Номер ответа: 13
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #13 Добавлено: 23.07.08 15:32
На каком нуле. Элементе массива? Да ну! Правда может в VBA Array нету. Ну введи по другому массив. Я написал
примерно так
:)

Ответить

Номер ответа: 14
Автор ответа:
 yan



Вопросов: 1
Ответов: 11
 Профиль | | #14 Добавлено: 23.07.08 15:35
что он делает в этой строчке arr1 = Array(0, 3, 5, 7, 9)
чем ему 0 не нравится?

Ответить

Номер ответа: 15
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #15 Добавлено: 23.07.08 15:37
Это создается массив чисел. Проверил и в VBA. Все работает. И с листа и с формы.

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам