Русское сообщество по скриптингу

вопросик по str_to_num  [Решено]

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

Re: вопросик по str_to_num

Сообщение di.alyabev » 24 май 2017, 20:14

Соска, то что надо по моему, всем спасибо , вечером проверю.
Аватара пользователя
di.alyabev
 
Сообщения: 200
Зарегистрирован: 15 ноя 2012, 15:58
Забанен
Благодарил (а): 24 раз.
Поблагодарили: 109 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: вопросик по str_to_num

Сообщение KOTOKU » 24 май 2017, 20:43

Вот, накатал такую штуку, она читает строку написанную в чате, к примеру я написал текст "H2i5"
Плагин выведет в чат сумму чисел 2 + 5, которая находится в тексте H2i5.
Надеюсь, я тебя правильно понял.

Код: Выделить всё
#include <amxmodx>

#define MAX_CHAT_LEN    190   // Больше 190 не ставить, ограничение чата 192 символа!

public plugin_init() {
    register_clcmd("say", "get_say")
}

public get_say(id)
{
    static szChat[MAX_CHAT_LEN]; read_args(szChat, charsmax(szChat)); remove_quotes(szChat);
    new iNum = IN_STR_GET_NUM(szChat, strlen(szChat));
    client_print(0, print_chat, "Общая сумма чисел в строке = %d", iNum);
}

public IN_STR_GET_NUM(szText[MAX_CHAT_LEN], iLen)
{
    new szReserv[1], iResult, i;
    for(= 0; i < iLen; i++)
    {
        szReserv[0] = szText[i];
        if(isdigit(szReserv[0]))
            iResult += str_to_num(szReserv);
    }
    return iResult;
}
 
Аватара пользователя
KOTOKU
 
Сообщения: 766
Зарегистрирован: 10 фев 2013, 00:53
Благодарил (а): 10 раз.
Поблагодарили: 117 раз.

Re: вопросик по str_to_num

Сообщение RevCrew » 24 май 2017, 22:05

KOTOKU, а если строка будет 105 сумма же будет 15 а у тебя 6))
Аватара пользователя
RevCrew
Скриптер
 
Сообщения: 1648
Зарегистрирован: 15 июл 2013, 20:45
Благодарил (а): 273 раз.
Поблагодарили: 357 раз.
Языки программирования: Unkown

Re: вопросик по str_to_num

Сообщение Dart_Begep » 24 май 2017, 22:22

RevCrew, а это каким образом сумма цифр числа 105 может равняться 15? :-) Ну или тогда уж строку надо бить не на цифры, а на числа, разделяемые любыми не цифровыми символами. Тогда 105=105 ;)
Аватара пользователя
Dart_Begep
 
Сообщения: 131
Зарегистрирован: 19 апр 2017, 22:29
Благодарил (а): 11 раз.
Поблагодарили: 27 раз.
Опыт программирования: Больше трех лет
Языки программирования: Pawn
Php
JavaScript

Re: вопросик по str_to_num

Сообщение KOTOKU » 25 май 2017, 03:28

Да я так накидал для примера, он спрашивал про то, как через цикл это сделать, вот и накатал ему пример. Если ему хочется - сделает апргрейд до нужного для себя стока.
В моем коде выше считывается каждый символ, в разряде единиц, естественно.
Если же он хочет добавить: десятки, сотни, тысячи, то он вправе и сам это сделать, ну или Вы ему в этом поможете.
У меня, к сожалению, времени в последнее время совсем мало.
Аватара пользователя
KOTOKU
 
Сообщения: 766
Зарегистрирован: 10 фев 2013, 00:53
Благодарил (а): 10 раз.
Поблагодарили: 117 раз.

Re: вопросик по str_to_num  [Решено]

Сообщение di.alyabev » 25 май 2017, 08:14

Я все сам, всем спасибо. Циклом то я и не хотел как раз днелать, думал можт способ получше есть , я разберусь дальше сам, всем спасибо за помощь.
Аватара пользователя
di.alyabev
 
Сообщения: 200
Зарегистрирован: 15 ноя 2012, 15:58
Забанен
Благодарил (а): 24 раз.
Поблагодарили: 109 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Пред.

Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9