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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.01.2014, 12:35   #1
Екатерина23
 
Регистрация: 05.12.2013
Сообщений: 7
По умолчанию Basic Описать функцию DigitN (K, N) целого типа

Описать функцию DigitN (K, N) целого типа, возвращающую N-ю цифру целого положительного числа К (цифры в числе нумеруются справа налево). Если количество цифр в числе К меньше N, то функция возвращает -1. Для каждого из пяти данных целых положительных чисел K1, K2, ..., K5 вызвать функцию DigitN с параметром N, изменяющимся от 1 до 5
Екатерина23 вне форума Ответить с цитированием
Старый 11.01.2014, 13:29   #2
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Например так. Открыли Excel, Сервис - Макрос - Редактор Visual Basic.
Копируете пример (проверяем через F8):

Код:
Sub test()  ' Проверка
Dim n As Integer
Dim k As Integer
Dim y As Integer
    y = DigitN(234, 4)
End Sub

' Функция возвращает n-ую цифру числа k (считаем справа) или
' -1, если цифр в числе меньше n 
Function DigitN(ByVal k As Integer, ByVal n As Integer) As Integer
Dim b As Integer
Dim i As Integer
Dim ostat As Integer

    b = k
    For i = 1 To n
        ostat = b Mod 10 ' Правая цифра числа
        If ostat = 0 Then ' Цифр меньше чем n
           DigitN = -1
           Exit Function
        End If
        b = b \ 10       ' Число без правой цифры
    Next
    DigitN = ostat
End Function

Как-то так, ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 11.01.2014, 13:51   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Екатерина, а чем Вас не устроила ваша предыдущая тема?!!

Visual Basic: Описать функцию DigitN (K, N) целого типа, возвращающую N-ю цифру целого положительного числа К

там Вам DiemonStar и решение уже написал!!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.01.2014, 14:05   #4
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Во как!
Не видел.
Там через обработку строки.
Так думаю, что ТС трудно признать, что ничего не поняла из того кода.
Может этот будет понятнее

Как-то так, ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 11.01.2014, 15:28   #5
Екатерина23
 
Регистрация: 05.12.2013
Сообщений: 7
По умолчанию

Спасибо огромное за помощь
Екатерина23 вне форума Ответить с цитированием
Старый 11.01.2014, 17:18   #6
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию Реплика из зала

Не просто помощь, а подмени меня — у меня дела!
Цитата:
Сообщение от ViktorR Посмотреть сообщение
Может этот будет понятнее
Понятнее непонятного не всегда понятно.

Просто некоторые прутся от For…Next, но не приемлют IIf’ов.
Sasha_Smirnov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Visual Basic: Описать функцию DigitN (K, N) целого типа, возвращающую N-ю цифру целого положительного числа К Екатерина23 Помощь студентам 1 10.12.2013 09:25
Описать функцию Ln1(x,e) вещественного типа.. mm00 Помощь студентам 0 09.12.2013 18:23
Описать функцию IsPrime(N) логического типа... nadyaH Помощь студентам 37 09.11.2013 19:21
Описать Функцию Палиндром для целого числа glebast Помощь студентам 2 30.12.2011 13:33
Написать функцию булевского(целого) типа, определяющую упорядоченность массива целых чисел Anando Паскаль, Turbo Pascal, PascalABC.NET 16 23.09.2011 13:26