Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Отделение последнего знака в числе 
:(
    Опции темы
igramnet
Дата 28.7.2007, 14:40 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 7.10.2006

Репутация: нет
Всего: нет



Имеется переменная
$sum="916";

Как отделить в нём шестёрку?

Просто мне необходимо проверить заканчивается ли число на девятку.

Спасибо.
PM MAIL   Вверх
Anarki
Дата 29.7.2007, 15:28 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 326
Регистрация: 14.3.2005

Репутация: 7
Всего: 11



Код

$sum="916";
$chislo = substr($sum, -1, 1);
echo $chislo;



--------------------
PM WWW   Вверх
Mal Hack
Дата 29.7.2007, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



print $str[strlen($str)-1];
PM ICQ   Вверх
Fally
Дата 30.7.2007, 09:56 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 17.8.2006
Где: Dahla

Репутация: 3
Всего: 4



Код

$lastSym = ((int)$sum % 10);



--------------------
Прежде чем задать вопрос на форуме воспользуйтесь поиском.
user posted image
user posted image
PM MAIL   Вверх
Mal Hack
Дата 30.7.2007, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Fally, и что это даст?
А вот на такой строке попробуйте: "324523764532764264213213"
PM ICQ   Вверх
Fally
Дата 31.7.2007, 10:30 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 17.8.2006
Где: Dahla

Репутация: 3
Всего: 4



Цитата(Mal Hack @  30.7.2007,  13:49 Найти цитируемый пост)
Fally, и что это даст?
А вот на такой строке попробуйте: "324523764532764264213213" 

название темы видели? "Отделение последнего знака в числе" - вот оно... а зачем вы мне приводите в пример строку? (пусть даже строковое представление целого числа) а то что вы написали, числом не является для РНР, и дело даже не в том, что оно в кавычках, а в том, что превышает максимальное значение типа integer в РНР. А если вас в институте (или где там ещё учат) не учили операциям над целыми числами я не виноват, т.к. получение остатка от деления на 10 всегда даст последнюю цифру числа...

Это сообщение отредактировал(а) Fally - 31.7.2007, 13:35


--------------------
Прежде чем задать вопрос на форуме воспользуйтесь поиском.
user posted image
user posted image
PM MAIL   Вверх
Glip
Дата 31.7.2007, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 473
Регистрация: 30.12.2006

Репутация: 7
Всего: 18



Fally,  а где сказано что integer?


--------------------
user posted image
PM MAIL   Вверх
Fally
Дата 31.7.2007, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 17.8.2006
Где: Dahla

Репутация: 3
Всего: 4



Glip, в названии темы, сказано что "в числе", а слово число само по себе подразумевает тип integer (или на худой конец double, float. Но судя по контексту задачи все числа имеют при рпиведении из строки в число именно тип integer)... бесспорно число может храниться в строке, но если его числовое значение, превысит максимальное число в типе integer, как в примере Mal Hack'а то целым числом _это_ уже являться не будет, т.к. любая арифметическая операция будет приводить результат к типу double. Вот тест:
Код

<?php
$a = '634523472384385789347589375';
$b = '57843573897589327583758375892';
print($a + $b);
?>

Как результат:
Код

5.8478097369974E+028


Надеюсь разъснил свою точку зрения, касательного этого вопроса.

Это сообщение отредактировал(а) Fally - 31.7.2007, 13:34


--------------------
Прежде чем задать вопрос на форуме воспользуйтесь поиском.
user posted image
user posted image
PM MAIL   Вверх
Mal Hack
Дата 31.7.2007, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Блин, Вы меня извините, но задолбали уже такие горе пхп-программисты, которые скорее всего не имели дело даже с Паскалем, про си не оворю, и не понимают того, что такое тип данных, диапазон значений и т.п.

Да, ПХП вам многое позволяет сделать, но это - НЕПРАВИЛЬНО, вот будете писать какую-ть систему по работе с деньгами, вам заказчик потом, голову, гланды и еще раз гланды оторвет, от того,что у вас числа черт знает какие получаются...

Посему, в любом случае, операция получения последнего числа, наиболее предпочтительна - СТРОКОВАЯ. 

PS:  если бы автор указал, что ему надо работать именно с integer, то был бв другое дело.
PM ICQ   Вверх
Flashdown
Дата 31.7.2007, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 85
Регистрация: 27.5.2006
Где: Москва

Репутация: нет
Всего: нет



Посему, в любом случае, операция получения последнего числа, наиболее предпочтительна - СТРОКОВАЯ. 

ну и называть тему тогда надо было "получение последнего символа в строке"
PM MAIL ICQ   Вверх
Fally
Дата 1.8.2007, 09:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 17.8.2006
Где: Dahla

Репутация: 3
Всего: 4



Mal Hack, давайте не будем переходить на горе-не горе программистов... касательно паскаля и С(++) вы ошибаетесь очень сильно... Поверьте, писал не только системы по работе с деньгами, всё прекрасно работает и заказчик доволен. И как говорится "Не пытайся вытащить из чужого глаза сучок, когда в своём и бревна не видишь..." 


Flashdown, +1... хотя можно было бы назвать "получение последней цифры из числа в _строковом_ представлении"


--------------------
Прежде чем задать вопрос на форуме воспользуйтесь поиском.
user posted image
user posted image
PM MAIL   Вверх
Mal Hack
Дата 1.8.2007, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 122
Всего: 261



Fally, я вижу как вы в пхп плюете на числовые диапазоны и т.п. Так делать нельзя. 
PM ICQ   Вверх
Glip
Дата 1.8.2007, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 473
Регистрация: 30.12.2006

Репутация: 7
Всего: 18



Fally,  8.23 - тоже число
Цитата(Fally @  31.7.2007,  13:30 Найти цитируемый пост)
а слово число само по себе подразумевает тип integer

а вот из контекста судить вредно smile



--------------------
user posted image
PM MAIL   Вверх
Diesel Draft
Дата 1.8.2007, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 876
Регистрация: 18.1.2005
Где: Lviv, Ukraine

Репутация: 1
Всего: 5



ну я з вас не могу. Такой просто вопрос, но даже его вы умудрились растянуть

на мой взгляд самый верный вариант у Anarki

Код

$sum="916";
$chislo = substr($sum, -1, 1);
echo $chislo;



--------------------
НЕДОМА в маси 
PM MAIL WWW ICQ GTalk   Вверх
mishaSL
Дата 1.8.2007, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1046
Регистрация: 10.1.2007
Где: Санкт-Петербург

Репутация: 19
Всего: 54




 ! 
mishaSL

Fally и Mal Hack не надо спорить на пустом месте. А тем более по поводу названия темы. Автор темы новичок и  в своем примере привел число в виде строки. Вобщем: решения найдены и не одно. Тема закрыта.




--------------------
Лучший способ научиться программированию - это посмотреть как это делают другие...
PM MAIL   Вверх
  
Закрытая темаСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0589 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.