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

Программа проверки знания таблицы умножения - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.87
Alika07
 Аватар для Alika07
4 / 4 / 0
Регистрация: 04.12.2012
Сообщений: 39
22.01.2013, 00:56     Программа проверки знания таблицы умножения #1
Добрый вечер.
не могу понять, где напутала в коде. if не срабатывает, пробовала заполнить массив без указателей - выдает либо адрес элемента, либо ошибку. с указателями тоже ничего не получается(.
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
/* Написать программу проверки знания таблицы умножения.
    Программа должна вывести 10 примеров и выставить оценку:
    за 10 правильных ответов — "отлично", за 9 и 8 — "хорошо", за 7 и 6 — "удовлетворительно",
    за 6 и менее — "плохо".*/
    int mass[10] = {4, 16, 25, 9, 100, 15, 16, 12, 20, 81};
    int arr[10];
    int *pa = 0;
    int schetchik = 0;
    cout<<"2 * 2 = "<<endl;
    cout<<" 4 * 4 = "<<endl;
    cout<<"5 * 5 = "<<endl;
    cout<<"3 * 3 = "<<endl;
    cout<<"10 * 10 = "<<endl;
    cout<<"5 * 3 = "<<endl;
    cout<<"2 * 8 = "<<endl;
    cout<<"4 * 3 = "<<endl;
    cout<<"5 * 4 = "<<endl;
    cout<<"9 * 9 = "<<endl;
    for (int i = 1; i <= 10; i++)
    {
        cin>>*pa;
        arr[i]= *pa;
    }
    cout<<"\n";
    for (int i = 1; i <= 10; i++)
    {
        cout<<arr[i]<<"\t";
    }
    /*for (int z = 1; z <= 10; z++)
    {*/
        for (int i = 1; i <= 10; i++)
        {
            if (mass[i] == arr[i])
            {
                schetchik ++;
            }
        /*}*/
    }
    if (schetchik == 10)
    {
        cout<<"otlichno"<<endl;
    }
    if (schetchik == 9 || schetchik == 8)
    {
        cout<<"horosho"<<endl;
    }
    if (schetchik == 7 || schetchik == 6)
    {
        cout<<"ydovletvoritelno"<<endl;
    }
    if (schetchik < 6)
    {
        cout<<"ploho"<<endl;
    }
Добавлено через 23 минуты
все, уже разобралась. может, кому пригодится)
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
{
    /* Написать программу проверки знания таблицы умножения.
    Программа должна вывести 10 примеров и выставить оценку:
    за 10 правильных ответов — "отлично", за 9 и 8 — "хорошо", за 7 и 6 — "удовлетворительно",
    за 6 и менее — "плохо".*/
    int mass[10] = {4, 16, 25, 9, 100, 15, 16, 12, 20, 81};
    int arr[10];
    int schetchik = 0;
    cout<<"2 * 2 = "<<endl;
    cout<<" 4 * 4 = "<<endl;
    cout<<"5 * 5 = "<<endl;
    cout<<"3 * 3 = "<<endl;
    cout<<"10 * 10 = "<<endl;
    cout<<"5 * 3 = "<<endl;
    cout<<"2 * 8 = "<<endl;
    cout<<"4 * 3 = "<<endl;
    cout<<"5 * 4 = "<<endl;
    cout<<"9 * 9 = "<<endl;
    for (int i = 0; i < 10; i++)
    {
        cin>>arr[i];
    }
    cout<<"\n";
    for (int i = 0; i < 10; i++)
    {
        cout<<arr[i]<<"\t";
    }
        for (int i = 0; i < 10; i++)
        {
            if (mass[i] == arr[i])
            {
                schetchik ++;
                cout<<"odinakovu"<<mass[i]<<endl;
            }
            else
            {
                cout<<"ne odinakovu"<<mass[i]<<"\t"<<arr[i]<<endl;
            }
    }
        cout<<"schetchik = "<<schetchik<<endl;
    if (schetchik == 10)
    {
        cout<<"otlichno"<<endl;
    }
    if (schetchik == 9 || schetchik == 8)
    {
        cout<<"horosho"<<endl;
    }
    if (schetchik == 7 || schetchik == 6)
    {
        cout<<"ydovletvoritelno"<<endl;
    }
    if (schetchik < 6)
    {
        cout<<"ploho"<<endl;
    }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2013, 00:56     Программа проверки знания таблицы умножения
Посмотрите здесь:

Написать программу проверки знания даты основания Санкт-Петербурга. В случае неправильного ответа пользователя, программа должна выводить правильный о C++
Написать программу проверки знания даты начала второй мировой войны C++
C++ Программа проверки знания истории архитектуры
Программа проверки знания даты начала Второй мировой войны C++
C++ Программа должна выводить аналог целочисленной таблицы умножения для дробей
Вывод таблицы умножения C++
C++ Раскраска таблицы умножения
C++ Выввод таблицы умножения

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
krigan
 Аватар для krigan
1 / 1 / 0
Регистрация: 31.10.2012
Сообщений: 92
29.08.2014, 13:58     Программа проверки знания таблицы умножения #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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include<iostream>
#include<stdlib.h>
#include<time.h>
 
 
using namespace std;
 
int main()
 
{
setlocale(LC_ALL,"Rus");
srand(time(NULL));
 
int mas[9];
int mas_2[9];
int answer=1, res=0;
int rating=0;
 
cout<<"\t\tПРОГРАММА ДЛЯ ПРОВЕРКИ ТАБЛИЦЫ УМНОЖЕНИЯ\n";
cout<<"\t\t---------------------------------------\n\n ";
 
 
    for (int i = 1, j=1; i <=12, j<=12; i++, j++){  
 
        mas[i]=rand()%10+1;      
        mas_2[j]=rand()%10+1;               
 
        cout<<"Вопрос №" <<i<< "  "<<mas[i]<< " * " <<mas_2[j]<< " = ";
        res=mas[i]*mas_2[j];
        cin>>answer;
        cout<<" Правильный ответ: " <<res<<  " \n\n ";      
        if(answer==res)rating++;
        
}
    
    cout<<"Количество набранных баллов: " <<rating<< " из 12 возможных\n";
    if(rating>=10) cout<<" Оценка за ответы: ОТЛИЧНО!\n\n ";
    if(rating==8||rating==9) cout<<" Оценка за ответы: ХОРОШО\n\n ";
    if(rating==6||rating==7) cout<<" Оценка за ответы: УДОВЛЕТВОРИТЕЛЬНО\n\n ";
    if(rating<6) cout<<" Оценка за ответы: НЕУДОВЛЕТВОРИТЕЛЬНО!\n\n ";
}
Добавлено через 15 минут
Это вариант работает с функциями, но на этапе компиляции выдаёт ошибки связанные с вводом и выводом внутри самой функции. Буду благодарен, если укажите мне на них. С функциями только начал ознакомление.

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
#include<iostream>
#include<stdlib.h>
#include<time.h>
 
int mass[9];
int mass_2[9];
int answers=1, ress=0;
int ratings=0;
 
int funct (int mass[9], int mass_2[9]){for (int i = 1, j=1; i <=12, j<=12; i++, j++){   
 
        mass[i]=rand()%10+1;         
        mass_2[j]=rand()%10+1;              
 
        cout<<"Вопрос №" <<i<< "  "<<mass[i]<< " * " <<mass_2[j]<< " = ";
        ress=mass[i]*mass_2[j];
        cin>>answers;
        cout<<" Правильный ответ: " <<ress<<  " \n\n ";     
        if(answers==ress)ratings++; 
      }
return mass[9], mass_2[9];
}
 
void result(int ratings){
cout<<"Количество набранных баллов: " <<ratings<< " из 12 возможных\n";
    if(ratings>=10) cout<<" Оценка за ответы: ОТЛИЧНО!\n\n ";
    if(ratings==8||ratings==9) cout<<" Оценка за ответы: ХОРОШО\n\n ";
    if(ratings==6||ratings==7) cout<<" Оценка за ответы: УДОВЛЕТВОРИТЕЛЬНО\n\n ";
    if(ratings<6) cout<<" Оценка за ответы: НЕУДОЛВЛЕТВОРИТЕЛЬНО!\n\n ";
 
}
 
 
using namespace std;
 
int main()
 
{
setlocale(LC_ALL,"Rus");
srand(time(NULL));
 
int mas[9];
int mas_2[9];
 
 
cout<<"\t\tПРОГРАММА ДЛЯ ПРОВЕРКИ ТАБЛИЦЫ УМНОЖЕНИЯ\n";
cout<<"\t\t---------------------------------------\n\n ";
 
funct(mas, mas_2);    
result(ratings);    
    
}
Pingvinoff
 Аватар для Pingvinoff
60 / 60 / 11
Регистрация: 20.08.2014
Сообщений: 593
29.08.2014, 14:07     Программа проверки знания таблицы умножения #3
krigan, ну во-первых не нужно (читай нельзя) использовать глобальные переменные.
Во-вторых хотелось бы увидеть список ошибок
Yandex
Объявления
29.08.2014, 14:07     Программа проверки знания таблицы умножения
Ответ Создать тему
Опции темы

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