04.07.2012, 05:33
Коллекция функций / макросов
04.07.2012, 08:38
А почему просто нельзя strlen ввести?
04.07.2012, 09:04
04.07.2012, 16:01
Количество вхождений = количеству символов. Сам попробуй.
04.07.2012, 16:45
05.07.2012, 02:34
Окей. Видимо ты не понял, что нигде не указывается искомый символ.
Длина строки - 26 символов (не включая завершающий псведо-ноль), число вхождений "o" - 9 раз.
Исходя из твоих "гениальных" сообщений, мы должны получить 9, но получаем 26 . Завязывай гулять на свежем воздухе, а то мозг уже атрофировался. Это по поводу вопроса о strlen.
А по поводу вопроса о функции, которую опубликовал чел - надо описание адекватное составлять, тогда и путаницы не будет. Я прочитал описание и ответил, код не смотрел.
И я бы так тогда уж сделал:
Длина строки - 26 символов (не включая завершающий псведо-ноль), число вхождений "o" - 9 раз.
pawn Код:
new stepashka[] = "ololotrolololojavoditelnlo";
printf("%d", strlen(stepashka));
А по поводу вопроса о функции, которую опубликовал чел - надо описание адекватное составлять, тогда и путаницы не будет. Я прочитал описание и ответил, код не смотрел.
И я бы так тогда уж сделал:
pawn Код:
stock SymbolCount(string[], symbol)
{
for(new i = 0, count; string[i] != EOS; i++)
{
if(string[i] == symbol) count += 1;
}
return count;
}
05.07.2012, 04:56
05.07.2012, 05:31
26.09.2012, 15:20
Так не проще не?
Code:
#define NFORMAT(%1,%2,%3,%4)\ ((%1)%(10)==1&&(%1)%(100)!=11?(%2):(%1)%(10)>=2&&(%1)%(10)<=4&&((%1)%(100)<10||(%1)%(100)>=20)?(%3):(%4)) NFORMAT(num,"число","числа","чисел"));
26.09.2012, 16:49
Quote:
Так не проще не?
Code:
#define NFORMAT(%1,%2,%3,%4)\ ((%1)%(10)==1&&(%1)%(100)!=11?(%2):(%1)%(10)>=2&&(%1)%(10)<=4&&((%1)%(100)<10||(%1)%(100)>=20)?(%3):(%4)) NFORMAT(num,"число","числа","чисел")); |
Тест в 1 000 000 интераций
[26.09.2012 | 20:05:05] GetNeededWord - 494
[26.09.2012 | 20:05:05] NFORMAT - 280
26.09.2012, 19:22
GameMan, ну вообще-то всё уже давно просчитано, написано и выложено: http://translate.sourceforge.net/wiki/l10n/pluralforms
20.10.2012, 10:46
Доброго времени суток.
Все знают функцию ShowPlayerDialog. Но бывают такие моменты, когда необходимо "скрыть" диалог, решение очень простое!
Добавьте в вашем коде:
Готово!
Использование: HidePlayerDialog(playerid);
Автор: DrSlett
Все знают функцию ShowPlayerDialog. Но бывают такие моменты, когда необходимо "скрыть" диалог, решение очень простое!
Добавьте в вашем коде:
PHP Code:
#define HidePlayerDialog(%0) ShowPlayerDialog(%0, -1, 0, "", "", "", "")
Использование: HidePlayerDialog(playerid);
Автор: DrSlett
20.10.2012, 12:17
Quote:
Доброго времени суток.
Все знают функцию ShowPlayerDialog. Но бывают такие моменты, когда необходимо "скрыть" диалог, решение очень простое! Добавьте в вашем коде: PHP Code:
Использование: HidePlayerDialog(playerid); Автор: DrSlett |
20.10.2012, 13:30
20.10.2012, 20:46
Quote:
Доброго времени суток.
Все знают функцию ShowPlayerDialog. Но бывают такие моменты, когда необходимо "скрыть" диалог, решение очень простое! Добавьте в вашем коде: PHP Code:
Использование: HidePlayerDialog(playerid); Автор: DrSlett |
21.10.2012, 15:14
А кто-нибудь пробовал? У меня не получилось почему-то (:
21.10.2012, 15:39
05.11.2012, 09:19
Жить надо проще.
pawn Код:
FlipString(string[]) {
if (string[0] == EOS) return false;
for (new i, letter, len = strlen(string); i < len; i++) {
if (len - i == i) break;
letter = string[i];
string[i] = string[len - i - 1];
string[len - i - 1] = letter;
}
return true;
}
05.11.2012, 09:53
Простая функция, записывающая строку с конца:
Результат:
pawn Code:
stock ConverselyString(string[])
{
new data[256], len = strlen(string);
if(len < 2) return false;
for(new i; i <= len; i++)
{
if(i == 0) len--;
data[i] = string[len - i];
}
format(string, len + 2, data);
return true;
}
Code:
Было: 1.. 2.. 3.. проверка Стало: акреворп ..3 ..2 ..1
15.11.2012, 16:04
Проверяет наличие игрока в кубе координат.
pawn Код:
stock IsPlayerInCube(playerid, Float:min_x, Float:min_y, Float:min_z, Float:max_x, Float:max_y, Float:max_z)
{
if(IsPlayerConnected(playerid))
{
new Float:px, Float:py, Float:pz;
GetPlayerPos(playerid, px, py, pz);
if(px >= min_x && px <= max_x && py >= min_y && py <= max_y && pz >= min_z && pz <= max_z) return 1;
}
return 0;
}
« Next Oldest | Next Newest »
Users browsing this thread: 6 Guest(s)