brunchik
написал 12 января 2011 года в 16:34 (4603 просмотра)
Ведет себя
неопределенно; открыл 5 тем в форуме, оставил 22 комментария на сайте.
Необходимо сгенерировать числа в деопазоне от 1 до 13.Т.е. нужно что бы 0 не входил в этот деопазон.Если так int(rand(13)) то 0 входит, а нужно его исключить.Что то не могу найти как.В паскаль так 1..13.А в perl есть такое?
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
Недавно подобная «задача» на Python почему-то вызвала большие трудности у одного первокурсника…
int(rand(x-1)) + 1
Спасибо.Сам не сообразил.Можно было и так int(rand(12)) + 1.Забыл я про 1.Делал как то то же поиск по определеного сивола а потом извлекал из строки то что следует за символом.Например rindex(’.',$string)+1
Может заодно подскажишь как мне делать что бы к 1 2 3 4 5 6 7 8 9 прибовлять 0 спереди а у 10 11 12 ничего.Т.е. что бы число стало двузначным.
И почему то использую функцию length так она мне все время показывает 1 да же если число 333.
Самый тупой способ с 0 в начале:
:-)
Проблем с length не вижу:
Я сейчас тоже не вижу проблему.У меня перл частенько клинит.Напишу код полностью рабочий.Положу на локальный сервер.И получаю ошибку.Перепешу все точь в точь заного и все ок.
А что бы и еще двузначные выводило нужно так
{
$m=int(rand(12)) + 1;
if (length($m) < 2)
{
print «0$m\n»
}
else
{
print «$m\n»
}