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

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

Войти
Регистрация
Восстановить пароль
 
BTR
8 / 8 / 1
Регистрация: 01.11.2010
Сообщений: 157
#1

Целое число - C++

24.02.2011, 21:21. Просмотров 382. Ответов 9
Метки нет (Все метки)

Всем привет, у меня тут возник вопрос, мне нужно получить целое число и если полученные данные не явл типом int, то есть числом, то выдавать ошибку, как можно проверить, является ли переменная числом? Может функция какая-нибудь есть? И еще мне нужно записать данные в файл и прочитать его. Кто нибудь может показать пример с комментариями и пояснением? Заранее благодарю Вас. Спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2011, 21:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Целое число (C++):

Составить функцию, которая, получив целое число определяет, уменьшается ли оно в целое число раз - C++
задание такое Составить функцию, которая, получив целое число определяет, уменьшается ли оно в целое число раз, если у него удалить...

Написать объявление функции, возвращающую целое число и принимающую указатель на целое число - C++
объявите функцию f2, возвращающую результат целого типа и передающую указатель на переменную а целого типа. вызовите функцию f2 с...

Если целое число М делится на целое число N, то на экран выводится частное от деления, в противном случае выводится сообщение - C++
Если целое число М делится на целое число N, то на экран выводится частное от деления, в противном случае выводится сообщение «M на N...

Дано целое число N (> 0). Найти сумму N2 + (N + 1)2+ (N + 2)2+ … + (2*N)2 (целое число) - C++
Дано целое число N (> 0). Найти сумму N2 + (N + 1)2+ (N + 2)2+ … + (2*N)2 (целое число).подскажите как решается или подскажите где можно...

Написать функцию, которая принимает 32 битное целое число и возвращает 16 битное целое число - C++
Помогите написать программу, использующую функцию, которая принимает 32 битное целое число и возвращает 16 битное целое число, состоящее из...

Дано целое число. Вывести его строку-описание вида «отрицательное чет-ное число», «нулевое число», «положительное нечетное число» и т. д. - C++
Дано целое число. Вывести его строку-описание вида «отрицательное чет-ное число», «нулевое число», «положительное нечетное число» и т. д. ...

9
asics
Freelance
Эксперт С++
2848 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
24.02.2011, 21:27 #2
Проверка на ввод
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <sstream>
#include <string>
 
template<class T>
void  input(const std::string &prompt, T &t){
    for(;;){
        std::cout << prompt;
        std::string s;
        getline(std::cin, s);
        std::istringstream  ssin(s);
        char c;
        if(ssin >> t && !(ssin >> c))
            break;
    }
}
 
int main(){
    int i;
    input("Int num: ", i);
    std::cout << "i = " << i << std::endl;
    return 0;
}
1
BTR
8 / 8 / 1
Регистрация: 01.11.2010
Сообщений: 157
24.02.2011, 21:31  [ТС] #3
А что означает template<class T>
std::istringstream ssin(s);
getline(std::cin, s);
?
0
hepr
61 / 33 / 5
Регистрация: 21.10.2010
Сообщений: 539
24.02.2011, 21:37 #4
template<class T> это объявление шаблонного класса T

Добавлено через 41 секунду
А остальное ссори не помню, давно с консольки слез
1
Mayonez
380 / 272 / 21
Регистрация: 26.12.2009
Сообщений: 875
24.02.2011, 21:42 #5
Цитата Сообщение от BTR Посмотреть сообщение
std::istringstream ssin(s);
превращаем строку в поток
getline(std::cin, s);
получаем строку s из стандартного потока ввода
0
BTR
8 / 8 / 1
Регистрация: 01.11.2010
Сообщений: 157
24.02.2011, 21:42  [ТС] #6
еще вопросик есть, почему при вызове функции sqrt выдает ошибку?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <string>
#include <math.h>
#include <cstdlib>
#include <cstdio>
 
using namespace std;
 
int main(int argc, char** argv) {
    setlocale(0,"Russian");
 
    int i = sqrt(42);
 
    system("pause >> void");
    return 0;
}
0
asics
Freelance
Эксперт С++
2848 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
24.02.2011, 21:49 #7
BTR, Если не ошибаюсь, то sqrt() принимает только переменные з плавающей запятой.
1
MILAN
886 / 780 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
24.02.2011, 21:51 #8
Цитата Сообщение от BTR Посмотреть сообщение
еще вопросик есть, почему при вызове функции sqrt выдает ошибку?
Какая ошыбка? У меня нормально скомпилировался.
0
silent_1991
Эксперт С++
4986 / 3043 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
24.02.2011, 22:03 #9
MILAN, это смотря какой компилятор. Все современные (или почти все) не воспримут это, т.к. не найдут единственно возможного варианта перегрузки. Надо явно приводить к double, чтобы сработало. Такая, например, запись
C++
1
pow(3, 5);
тоже не пройдёт, зато такая
C++
1
pow(3.0, 5);
за милую душу))
0
MILAN
886 / 780 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
24.02.2011, 22:11 #10
Цитата Сообщение от silent_1991 Посмотреть сообщение
MILAN, это смотря какой компилятор. Все современные (или почти все) не воспримут это, т.к. не найдут единственно возможного варианта перегрузки. Надо явно приводить к double, чтобы сработало. Такая, например, запись
Хотя да, Code::Blocks 10.05 скомпилировал, а вот MSVS 2010 - нет.
0
24.02.2011, 22:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.02.2011, 22:11
Привет! Вот еще темы с ответами:

Дано целое число m. получить найбольщее целое k при котором 4^k<m - C++
дано целое число m. получить найбольщее целое k при котором 46^k&lt;m Добавлено через 1 минуту извините есть ошибка вот правильная...

Дано целое число (N>0) найти наибольшее целое числа k, квадрат которого не превосходит N:k^2<=N - C++
Помогите пожалуйста сделать задачу. Нужно сделать на С++. Вот условие: Дано целое число (N&gt;0) найти наибольшее целое числа k, квадрат...

Поле first — целое число, левая граница диапазона, включается в диапазон; поле second — целое число, правая граница диапазона, не включается в диапазо - C++
8. Поле first — целое число, левая граница диапазона, включается в диапазон; поле second — целое число, правая граница диапазона, не...

Дано вещественное число A и целое число N. Вывести A в степени N (код внутри) - C++
Дано вещественное число A и целое число N (N больше 0). Вывести A в степени N: AN =A•A•...•A (числа A перемножаются N раз). Использовать...


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

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

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