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

Проверка! - C++

Восстановить пароль Регистрация
 
kursant
1 / 1 / 0
Регистрация: 31.01.2010
Сообщений: 61
14.02.2010, 17:54     Проверка! #1
Вот код программы
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <limits>
 
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{   int L(0),C(0), bad_input;   //размеры матриц
    int **matrix1 = NULL;
    int **matrix2 = NULL;
    do {bad_input=0;
    cout <<"Enter quantity of lines and columns:";
    cin >>L;
     if(!cin)
            {    
                cout << "Have not correctly entered!" << endl;
                bad_input=1;
                cin.clear();
                cin.ignore(numeric_limits<streamsize>::max(),'\n');
            }
    }while(bad_input);
    C=L;
    //Выделяем память под три матрицы:
    matrix1 = new int*[L];
    for(int i=0;i<L;i++)matrix1[i]= new int[C];
    matrix2 = new int*[L];
    for(int i=0;i<L;i++)matrix2[i]= new int[C];
    //Заполняем две матрицы
    for(int i=0;i<L;i++)
    {   cout<<"matrix1:\n";
        for(int j=0;j<C;j++)
        {   
            cout<<"element "<<' '<<i<<' '<<j<<'\t';
            cin>>matrix1[i][j];
        }
        cout<<'\n';
    }
 
    cout<<'\n';
 
    for(int i=0;i<L;i++)
    {   cout<<"matrix2:\n";
        for(int j=0;j<C;j++)
        {   
            
            cout<<"element "<<' '<<i<<' '<<j<<'\t';cin>>matrix2[i][j];
        }
        cout<<'\n';
    }
 
    //Показываем на экран матрицы
 
    for(int i=0;i<L;i++)
    {
        for(int j=0;j<C;j++)
        {
            cout<<' '<<matrix1[i][j];
        }
        cout<<'\n';
    }
 
    cout<<'\n';
 
    for(int i=0;i<L;i++)
    {
        for(int j=0;j<C;j++)
        {
            cout<<' '<<matrix2[i][j];
        }
        cout<<'\n';
    }
 
    cout<<'\n';
    getchar();
    cout <<"Press key to end...";
    //Освобождаме память из под трёх матриц
    for(int i = 0;i<L;i++)delete[]matrix1[i];
    delete[]matrix1;
    for(int i = 0;i<L;i++)delete[]matrix2[i];
    delete[]matrix2;
    getchar();
    return 0;
}
Когда вводишь размер матриц из одних букв, то он правиль выдает, чтоб ввели снова, а если вводишь много цифр с буквами, то он вылетает.
Помогите пожалуйста!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2010, 17:54     Проверка!
Посмотрите здесь:

Проверка правильности. C++
Проверка на числа C++
C++ Проверка чисел
проверка судоку C++
C++ Массив-проверка
проверка C++
Проверка с if C++
C++ Проверка if
C++ проверка на сбалансированность
C++ Проверка
С++ проверка C++
Проверка задачи C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Зоти Сергей
 Аватар для Зоти Сергей
228 / 226 / 13
Регистрация: 18.12.2009
Сообщений: 316
14.02.2010, 18:12     Проверка! #2
C++
1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
#include <stdlib.h>
 
 
    char Input[255];
    printf("Enter size: ");
        gets(Input);
        int a = atoi(Input);
        if(!a)
        //значит ввод содержит ошибку.
Yandex
Объявления
14.02.2010, 18:12     Проверка!
Ответ Создать тему
Опции темы

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