Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.87
Alika07
4 / 4 / 4
Регистрация: 04.12.2012
Сообщений: 39
#1

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

22.01.2013, 00:56. Просмотров 4322. Ответов 2
Метки нет (Все метки)

Добрый вечер.
не могу понять, где напутала в коде. 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;
    }
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2013, 00:56
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Программа проверки знания таблицы умножения (C++):

Проверка знания таблицы умножения
Напишите программу, которая предлагает ввести результат произведения двух...

Программа проверки знания истории архитектуры
Напишите программу проверки знания истории архитектуры. Программа должна...

Программа проверки знания даты начала Второй мировой войны
Привет всем. Такая проблема: сыну в 11-м классе задали написать программу...

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

Программа для изучения таблицы умножения
Напишите программу, которая поможет выучить таблицу умножения. Суть программы...

Программа должна выводить аналог целочисленной таблицы умножения для дробей
Задача из учебника Р.Лафоре Доброго времени суток! Я изучаю С++...

2
krigan
1 / 1 / 3
Регистрация: 31.10.2012
Сообщений: 93
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);    
    
}
0
Pingvinoff
61 / 61 / 15
Регистрация: 20.08.2014
Сообщений: 593
29.08.2014, 14:07 #3
krigan, ну во-первых не нужно (читай нельзя) использовать глобальные переменные.
Во-вторых хотелось бы увидеть список ошибок
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.08.2014, 14:07
Привет! Вот еще темы с решениями:

Написать программу проверки знания даты начала второй мировой войны
Написать программу проверки знания даты начала второй мировой войны. В случае...

Вывод таблицы умножения
Borland C++ Составить программу, которая распечатывает на экране таблицу...

Раскраска таблицы умножения
Раскраска таблицы умножения (Время: 1 сек. Память: 16 Мб Сложность: 32%) ...

Выввод таблицы умножения
Надо написать программу в с++,которая будет вывводить таблицу умножения С...


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

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

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