С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.58
shalad
7 / 7 / 0
Регистрация: 17.05.2010
Сообщений: 122
#1

Оканчивается ли число на 1? - C++

16.10.2010, 23:22. Просмотров 1710. Ответов 14
Метки нет (Все метки)

Помогите пожалуйста с алгоритмом, мне нужно определить, когда число оканчивается на 1 (кроме 11), т.е. 1, 21, 31, 41 и т.д.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2010, 23:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Оканчивается ли число на 1? (C++):

Некоторое число оканчивается на 2. Если же эту его последнюю цифру переставить на первое место, то число удвоится. Найти это число - C++
Некоторое число оканчивается на 2. Если же эту его последнюю цифру переставить на первое место, то число удвоится. Найти это число.

Некоторое число оканчивается на 2 - C++
напишите 2 задачки пожалуйста 1)Некоторое число оканчивается на 2. Если же эту его последнюю цифру переставить на первое место, то число...

Выяснить нечетное ли число и оканчивается ли на 6. - C++
Хелп,что-то не доходит как решить задачку с помощью вайл,фор. 1.Дано натуральное число. Выяснить нечетное ли оно и оканчивается ли на 6. ...

Определить оканчивается ли целое число цифрой 7 - C++
1. Если целое число М делится нацело на целое число К, то вывести на экран частное от деления, в противном случае вывести сообщение" "М на...

Найти, на сколько нулей оканчивается число N - C++
Вводится N. Необходимо найти, на сколько нулей оканчивается чило N! Нашел решение этой задачи на языке паскаль но с переводом...

Проверка на какую цифру оканчивается число - C++
Задание: сделать проверку, является ли число кратным и при этом не заканчиваться цифрой 3. Проверку на кратность я сделал, это не сложно...

14
easybudda
Модератор
Эксперт CЭксперт С++
9698 / 5648 / 964
Регистрация: 25.07.2009
Сообщений: 10,867
16.10.2010, 23:34 #2
C++
1
bool ends1(int val) { return val % 10 == 1 && val != 11; }
1
Unforgiven_00
60 / 60 / 3
Регистрация: 12.10.2010
Сообщений: 129
16.10.2010, 23:34 #3
Если число минус адын делится на 10
0
Knockkk
15 / 15 / 2
Регистрация: 10.10.2010
Сообщений: 42
16.10.2010, 23:35 #4
C++
1
2
3
4
5
6
double chislo;
double res1;
res1=(chislo-1)/10;
res2=int(res1);
if ((res1==res2) && (res2!=1))
  // число верное
1
neske
1505 / 872 / 84
Регистрация: 26.03.2010
Сообщений: 2,987
16.10.2010, 23:39 #5
Knockkk, велосипедищще!
0
shalad
7 / 7 / 0
Регистрация: 17.05.2010
Сообщений: 122
16.10.2010, 23:46  [ТС] #6
Спасибо!)))

Добавлено через 1 минуту
Цитата Сообщение от neske Посмотреть сообщение
велосипедищще!
Согласен. Но всеравно спасибо
Я тоже думал через остаток но не додумался разделить на 10)))
0
odip
Эксперт С++
7159 / 3221 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
17.10.2010, 07:57 #7
double chislo;
double res1;
res1=(chislo-1)/10;
res2=int(res1);
if ((res1==res2) && (res2!=1))
Cчитать через double - это большой изврат

Добавлено через 5 минут
И приведенный код Knockkk неправильный
Если взять chislo == -9, то ответ будет "число верное"
0
easybudda
Модератор
Эксперт CЭксперт С++
9698 / 5648 / 964
Регистрация: 25.07.2009
Сообщений: 10,867
17.10.2010, 11:45 #8
Цитата Сообщение от Unforgiven_00 Посмотреть сообщение
Если число минус адын делится на 10
да уж, проблема...
C++
1
2
#include <cstdlib>
bool ends1(int val) { return abs(val) % 10 == 1 && val != 11; }
0
shalad
7 / 7 / 0
Регистрация: 17.05.2010
Сообщений: 122
17.10.2010, 12:28  [ТС] #9
Ну на самом деле мне неважно про -1, т.к. я изначально проверяю это число чтобы оно было >0
0
odip
Эксперт С++
7159 / 3221 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
17.10.2010, 15:48 #10
#include <cstdlib>
bool ends1(int val) { return abs(val) % 10 == 1 && val != 11; }
easybudda, зря ты испугался
На самом деле при val == -1
код val % 10 выдает -1
поэтому проверка val % 10 == 1 не срабатывает
0
shalad
7 / 7 / 0
Регистрация: 17.05.2010
Сообщений: 122
20.10.2010, 19:41  [ТС] #11
Вот еще задача: нужно обработать случаи, когда число оканчивается на *,5(точнее больше него), т.е. 2,5; 2,5709. Тоже %10?
0
silent_1991
Эксперт С++
4989 / 3046 / 149
Регистрация: 11.11.2009
Сообщений: 7,028
Завершенные тесты: 1
20.10.2010, 19:47 #12
Тут надо сначала умножить на 10, потом привести к инту и взять остаток от деления.
0
shalad
7 / 7 / 0
Регистрация: 17.05.2010
Сообщений: 122
20.10.2010, 20:03  [ТС] #13
эээ... а можно код?) и на что делить?
0
silent_1991
Эксперт С++
4989 / 3046 / 149
Регистрация: 11.11.2009
Сообщений: 7,028
Завершенные тесты: 1
20.10.2010, 20:07 #14
А логически подумать?)))
C++
1
lastNum = (int)(num * 10.0) % 10;
Т.е. имеем 2.543.
Сначала умножаем на 10. Получаем 25.43.
Затем приводим к инт (т.е. по сути берём целую часть) - получаем 25.
А потом остаток от деления на 10 - получаем последнюю цифру числа - 5.
1
shalad
7 / 7 / 0
Регистрация: 17.05.2010
Сообщений: 122
20.10.2010, 20:15  [ТС] #15
Точно, туплю))) спасибо)))
0
20.10.2010, 20:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2010, 20:15
Привет! Вот еще темы с ответами:

Дано натуральное число. Определить оканчивается ли оно цифрой 7 C++ - C++
1. Дано натуральное число. Определить: -Оканчивается ли оно цифрой 7; -Одинаковы ли его цифры. 2. Определить, имеются ли в массиве...

Определить, на какую цифру, чётную или нечётную, оканчивается число - C++
Сделалано в DEV C++,нужно переделать в NetBeans IDE 1)задание: Дано натуральное число. Определить на какую цифру чётную или нечётную...

Написать программу, которая определяет, оканчивается ли данное целое число цифрой 7 - C++
написать программу, которая определяет, оканчивается ли данное целое число цифрой 7

На сколько нулей оканчивается факториал числа N? - C++
3.Вводится натуральное число N. На сколько нулей оканчивается число N! (N факториал)?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.