Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.62
a.n.o.n.i.m
137 / 137 / 15
Регистрация: 26.02.2011
Сообщений: 528
#1

Проверка корректности ввода чисел - C++

18.11.2011, 15:02. Просмотров 1842. Ответов 10
Метки нет (Все метки)

считывается квадратная матрица с файла

Как написать условие в коде,если после пробела идет не число то
C++
1
2
3
4
5
if(тут какое условие?)
{
cout<<"error.nepolnay matrica"
return 0;
}
считывается квадратная матрица с файла
 Комментарий модератора 
Избегайте использования слишком большого количества смайлов в сообщениях в тематических разделах форума, а также "кричащего" выделения текста. Это никаким образом не ускорит решение вашей проблемы.
 Комментарий модератора 
Старайтесь называть темы более осмысленно. Это серьезно повышает шансы на то, что Вам помогут.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2011, 15:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проверка корректности ввода чисел (C++):

Проверка корректности ввода - C++
Есть класс Point, в котором поля int X, int Y, int Z; (X должен быть больше Y) Есть конструктор без параметров Point::Point(){ cout...

Проверка корректности ввода - C++
****Сразу извините, что заголовок на английском, при попытке написать по русски, вылетала ошибка.**** День добрый. Решил, что пора учить...

Проверка ввода чисел - C++
Есть цикл: struct WvsB{ int PLAYER; int PLAYER1; }; ---

Контроль корректности ввода числа - C++
В консоли в поле (Enter The Yar: )вводя нужно вводить только цифры, если ввести случайно букву то на экране консоли мерцает (Enter The Yar:...

Проверка корректности данных - C++
Вводятся числа. Необходимо проверить, что данные введены действительно числового формата (double, например). Если вводятся буквы, другие...

Проверка правильности ввода. Запретить ввод чисел - C++
Здравствуйте форумчане! Хочу сделать в коде проверку типа: если вводить, где положено string -числа, то выходит сообщение &lt;Not...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
PointsEqual
ниначмуроФ
834 / 518 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
18.11.2011, 15:10 #2
Цитата Сообщение от a.n.o.n.i.m Посмотреть сообщение
if(тут какое условие?)
если не число )

Добавлено через 1 минуту
а как вы считываете матрицу?
mc.Duck
Заблокирован
18.11.2011, 15:14 #3
a.n.o.n.i.m, тупизм какой-то. Проверить символ-разделитель можно так isspace(char).
a.n.o.n.i.m
137 / 137 / 15
Регистрация: 26.02.2011
Сообщений: 528
18.11.2011, 15:26  [ТС] #4
C++
1
2
if(!ifs.eof())
    ifs>>matr[i][j];
считывается

если файл такой
4
1 2 3 4
4 1 6 7
7 8 9 5
4 7 8
после восмерки идет 2 пробела еще
fasked
Эксперт С++
4934 / 2514 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
18.11.2011, 15:32 #5
ошибка при вводе в неправильном формате
a.n.o.n.i.m
137 / 137 / 15
Регистрация: 26.02.2011
Сообщений: 528
18.11.2011, 15:44  [ТС] #6
это увас считывание данных с файла разве?
ОгУрЕц
Заблокирован
18.11.2011, 15:49 #7
a.n.o.n.i.m, а что если при вводе считать число прочитанных элементов?
Если число считанных элементов не совпадает с числом элементов матрицы вывести сообщение
fasked
Эксперт С++
4934 / 2514 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
18.11.2011, 15:49 #8
Цитата Сообщение от a.n.o.n.i.m Посмотреть сообщение
это увас считывание данных с файла разве?
А в чем разница?
Thinker
Эксперт C++
4225 / 2199 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
18.11.2011, 15:52 #9
я так понимаю, что файл текстовый? А то если двоичный, то проблем нет здесь никаких.
ОгУрЕц
Заблокирован
18.11.2011, 16:07 #10
a.n.o.n.i.m, посмотрите что у меня вышло с вашей матрицей

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <fstream>
using namespace std;
 
int main ()
{
    ifstream ifs("dannie.txt");
    int i,j,n;ifs>>n;
    int ** matrica = new int*[n];
    int schetcjik = 0;
    bool ConecFaila = ifs.eof();
    for(i = 0; i < n; i++)
    {
        matrica[i] = new int[n];
        for(j = 0; j < n && !ConecFaila; j++)
        {
            ConecFaila = ifs.eof();
            if(!ConecFaila)
            {
                ifs>>matrica[i][j];
                cout<<matrica[i][j]<<" ";
                schetcjik++;
            }
            else
                cout<<"\nMatrica ne polnaya!\n";
        }
        cout<<endl;
    }
    cout<<"V matrice ne hvataet "<<n*n - schetcjik<<"elementov\n";
    return 0;
}
1 2 3 4
4 1 6 7
7 8 9 5
4 7 8
Matrica ne polnaya!

V matrice ne hvataet 1elementov
Press any key to continue
a.n.o.n.i.m
137 / 137 / 15
Регистрация: 26.02.2011
Сообщений: 528
19.11.2011, 12:29  [ТС] #11
неет,в этом и фишка так у меня работает если курсор на последнем числе стоит а если после числа еще пробел поставить,вот в чем проблема
Проверка корректности ввода чисел

видите какая квакозябра,какое условие от этого написать?

Добавлено через 19 часов 13 минут
Есть идеи?
 Комментарий модератора 
Картинки загружайте на форум, во избежание их удаления или потери на сторонних ресурсах.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.11.2011, 12:29
Привет! Вот еще темы с ответами:

Проверка корректности xml документа - C++
Нужно написать программу, которая проверяет закрытие тегов в xml документе. Подскажите пожалуйста.

Проверка корректности вводимых данных - C++
Здравствуйте, подскажите,пожалуйста, как прописать условия проверки. Мне нужно: если вводится радиус e больше одной из сторон, выводилось...

Проверка корректности вводимых данных - C++
Есть программа на проверку високосного года. Преподаватель при проверке вводит &quot;5 Аотао&quot; к примеру и программа читает первое число и...

Проверка корректности вводимых значений - C++
Имеется следующий код: #include &lt;iostream&gt; #include &lt;stdlib.h&gt; using namespace std; int main() { double a, b, c; ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
19.11.2011, 12:29
Ответ Создать тему
Опции темы

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