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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.70
Raynk
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 6
#1

C++ не могу в нём разобраться (заход 2) - C++

17.08.2009, 22:52. Просмотров 3393. Ответов 20
Метки нет (Все метки)

Спасибо что помогли мне я думаю что эти задания правильно решены.
Извините что я вас загружаю этими задачами но просто я не понимаю этот язык C++.
Помогите ещё задачи решить.
1. Два натуральных числа называются дружественными, если каждое из них равно сумме всех делителей другого (само другое число в качестве делителя не рассматривается). Найти все пары натуральных дружественных чисел, меньших 50000.
2. Дано предложение. Определить, сколько в нем одинаковых соседних букв.
3. Дано предложение. Найти наибольшее количество идущих подряд пробелов.
4. Имеется таблица выигрышей денежно-вещевой лотереи. Первый ее столбец содержит номер билета, второй – серию, третий – название выигрыша, четвертый – денежное выражение выигрыша (цену). У школьников было 5 билетов. Сколько из них оказались выигрышными.
5. Дан массив данных о росте человека: фамилия, пол, рост. Определить средний рост женщин этого списка, вывести на экран фамилию самого высокого мужчины этого списка.
6. В массиве а[1]..а[n] целых чисел переставить элементы так, чтобы чётные шли перед нечётными (не меняя взаимный порядок в каждой из групп).
7. Матрицу размера 5х6 заполнить так, чтобы элементы каждой строки, начиная со второй, были равны удвоенным элементам предыдущей строки.
8. Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы, расположите их в соответствии с ростом характеристик.
9. Дан массив данных, в котором хранятся данные о детских садах: наименование , номер сада, количество детей, район города, плата за месяц (в руб.). Посчитать количество детей в детских садах указанного района (ввести с клавиатуры) и вывести всю информацию о самом дорогом детском саде.
10. Натуральное число N > 1, представить в виде суммы натуральных чисел так, чтобы произведение этих слагаемых было максимально.
11. Путем перестановки элементов квадратной вещественной матрицы добиться того, чтобы ее минимальный элемент находился в левом верхнем углу, следующий по величине – в позиции (2,2), следующий по величине – в позиции (3,3) и т.д., заполнив таким образом всю главную диагональ.
12. Написать программу “Тестирование коллектива”. Входные данные - информация об учениках некоторого класса из n человек. Для каждого ученика заданы фамилия, возраст, рост, успеваемость (округленный средний балл) и др. параметры.
Ученик называется среднестатистическим по k-му параметру (уникальным по k-му параметру), если на нем достигается минимум (максимум) модуля разности среднего арифметического k-ых параметров всех учеников и значения k-го параметра этого ученика.
Ученик называется самым уникальным (самым средним), если он уникален (является среднестатистическим) по самому большому количеству параметров.
Программа должна считывать исходную информацию и печатать отчет:
• о самых уникальных;
• о самых средних;
• о самых средних среди самых уникальных;
• о самых уникальных среди самых средних.
13. Дано предложение. Поменять местами его первое и последнее слова.
14. "Вращающийся квадрат". Эта игра похожа на известный кубик Рубика. Играет один человек. Перед ним доска размером 4 x 4 клетки, в которых в произвольном порядке расставлены буквы латинского алфавита от A до P. Цель игры – расположить буквы по алфавиту. Делается это благодаря особому устройству доски: любой квадрат, образованный четырьмя соседними клетками, можно вращать по часовой стрелке. За каждый ход квадрат поворачивается ровно на одну клетку. В распоряжении игрока также имеется дополнительная операция, которую можно использовать только раз, - перестановка двух соседних букв любой строки.

Ели вам не тяжело попробуйте и эти задания решить.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
18.08.2009, 19:05     C++ не могу в нём разобраться (заход 2) #2
Задача №3

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
#include <iostream>
#include <string>
#include <Windows.h>
using namespace std;
 
int main(int argc, char* argv[])
{
        SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
        string word;
        int max_kol=0; 
        int j=0;
        cout << "Введите предложение: "<<endl;
        getline(cin,word);
        for(int i=0; i<word.size(); i++)
        {
            if (word[i]==' ')
            {
                j++;
            }
            else j=0;
            if(max_kol<j)
            {
                max_kol=j;
            }
        }
        cout<<"Максимальное количество пробелов:   "<<max_kol<<endl;
        return 0;
}
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
18.08.2009, 20:32     C++ не могу в нём разобраться (заход 2) #3
Задача T1

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
#include <stdio.h>
#include <stdlib.h>
 
const int MAX_NUM= 50000;
 
void calc_sum_div_arr( int size, int *arr );
 
 
/**************************************/
int main( void ) {
 
int n1, n2;
int arr[MAX_NUM];
 
 
calc_sum_div_arr( MAX_NUM, arr );
for ( n1= 1; n1<MAX_NUM; n1++ ) {
    if ( ((n2= arr[n1])<MAX_NUM) && n1<=n2 && arr[n2] == n1 ) {
        printf( "n1=%d n2=%d\n", n1, n2 );
    }
}
 
return 0;
 
} // main()
 
 
/**************************************/
void calc_sum_div_arr( int size, int *arr ) {
 
register int num, div, sum_div;
 
 
if ( size<=0 ) { return; }
 
arr[0]= 0;
for ( num= 1; num<size; num++ ) {
    sum_div= 0;
    for ( div= 1; div<num; div++ ) {
        if ( num%div == 0 ) { sum_div+= div; }
    }
    arr[num]= sum_div;
}
 
} // calc_sum_div_arr()


Добавлено через 52 минуты 39 секунд
Задача T6

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
#include <stdio.h>
#include <stdlib.h>
 
void print_arr( int *data, int from, int to, const char *title );
void sort_arr( int *data, int from, int to );
void right_rotate( int *data, int from, int to );
 
 
/**************************************/
int main( void ) {
 
const int N= 10;
int a[N+1]= { -1,
    5, 7, 6, 3, 2, 10, 41, 3, 6, 9
};
 
print_arr( a, 1, N, "before:\n" );
sort_arr( a, 1, N );
print_arr( a, 1, N, "after:\n" );
return 0;
 
} // main()
 
 
/**************************************/
void print_arr( int *data, int from, int to, const char *title ) {
 
int i;
 
 
printf( "%s", title );
for ( i= from; i<=to; i++ ) {
    printf( " %d", data[i] );
}
printf( "\n" );
 
} // print_arr()
 
 
/**************************************/
void sort_arr( int *data, int from, int to ) {
 
int i, j;
 
for ( i= from ; i<=to ; ) {
    if ( data[i] % 2 == 0 ) {
        i++; continue;
    }
    // here data[i] % 2 == 1
    for ( j= i+1; ; j++ ) {
        if ( j>to ) { goto label_exit; }
        if ( data[j] % 2 == 0 ) { break; }
    }
    // here data[i..j-1] % 2 == 1
    // data[j] % 2 == 0
    right_rotate( data, i, j );
}
label_exit: ;
 
} // sort_arr()
 
 
/**************************************/
void right_rotate( int *data, int from, int to ) {
    
int i, tmp_val;
 
if ( from>=to ) { return; }
tmp_val= data[to];
for ( i= to-1; i>=from; i-- ) {
    data[i+1]= data[i];
}
data[from]= tmp_val;
 
} // right_rotate()


Добавлено через 1 минуту 57 секунд
10. Натуральное число N > 1, представить в виде суммы натуральных чисел так, чтобы произведение этих слагаемых было максимально.
Эта задача явно не для начинающих.
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 21:49     C++ не могу в нём разобраться (заход 2) #4
мое понимание №2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int main()
{
    setlocale(LC_ALL,"Rus");
    char s[1000];
    std::cin.getline(s,1000);
    int i(0), j(0);
    int mas[256];
    for(i = 0; i < 256; ++i)
        mas[i] = 1;
    while(s[j])
    {
        if((int)s[j] == (int)s[j+1])
            mas[(int)s[j]]++;
        j++;
    }
    for(i = 0; i < 256; ++i)
        if(mas[i]>1)
            std::cout<<(char)i<<' '<<mas[i]<<'\n';
    system("pause");
    return 0;
}


Добавлено через 44 минуты 22 секунды
№13
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
#include <string>
int main()
{
    setlocale(LC_ALL,"Rus");
    std::string str;
    std::cout<<"Введите строку:\n";
    getline(std::cin, str, '\n');
    size_t pos1(0), pos2(0);
    pos1 = str.find(' ');
    pos2 = str.rfind(' ');
    if(pos1 == -1)
    {
        std::cout<<"В строке только одно слово";
        goto end;
    }
    else
    {
        std::cout<<"Результат:\n";
        std::string buf1;
        buf1 = str.substr(pos2 + 1, str.length() - pos2);
        str.replace(pos2 + 1, str.length() - pos2, str.substr(0, pos1));
        str.replace(0, pos1, buf1);
        std::cout<<str;
    }
 end:
    std::cout<<std::endl;
    system("pause");
    return 0;
}

Не по теме:

я не выбираю легкие задания,
я просто давно не писал на С++,
я просто разминаюсь



Добавлено через 8 минут 8 секунд
№7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main()
{
    setlocale(LC_ALL,"Rus");
    int matr[5][6], i, j;
    std::cout<<"Введите первую строку матрицы:\n";
    for(i = 0; i < 6; ++i)
        std::cin>>matr[0][i];
    for(i = 1; i < 5; ++i)
        for(j = 0; j < 6; ++j)
            matr[i][j] = matr[i - 1][j] * 2;
    std::cout<<"\nРезультат:\n";
    for(i = 0; i < 5; ++i, std::cout<<std::endl)
        for(j = 0; j < 6; ++j)
            std::cout<<matr[i][j]<<'\t';
    system("pause");
    return 0;
}


Добавлено через 21 минуту 40 секунд
№5
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
struct People
{
    char fam[20];
    bool pol;;
    int rost;
};
std::istream& operator>>(std::istream& in, People &ppl)
{
    std::cout<<"Фамилия\n> ", in>>ppl.fam;
    std::cout<<"Пол(1 - м, 0 - ж)\n> ", in>>ppl.pol;
    std::cout<<"Рост(см)\n1> ", in>>ppl.rost;
    return in;
}
std::ostream& operator<<(std::ostream& out, People &ppl)
{
    std::cout<<"Фамилия:\n> ", out<<ppl.fam;
    std::cout<<"Пол(1 - м, 0 - ж):\n> ", out<<ppl.pol;
    std::cout<<"Рост(см):\n1> ", out<<ppl.rost;
    return out;
}
int main()
{
    setlocale(LC_ALL,"Rus");
    const int n = 2;
    People pointer[n];
    int i;
    for(i = 0; i < n; ++i)
        std::cout<<"\nЧеловек № "<<i+1<<':'<<std::endl,
        std::cin>>pointer[i];
    std::cout<<"\nРезультат:\n";
    float srRost(0);
    int count(0), max(0), index(0);
    for(i = 0; i < n; ++i)
        if(pointer[i].pol)
        {
            if(pointer[i].rost > max)
            {
                max = pointer[i].rost;
                index = i;
            }
        }
        else
        {
            count++;
            srRost += pointer[i].rost;
        }
    if(!max)
        std::cout<<"В массиве нет мужчин";
    else
        std::cout<<"Фамилия самого высокого мужчины:\n"<<pointer[index].fam;
    std::cout<<"\n\n";
    if(count)
        std::cout<<"Средний рост женщин из массива:\n"<<srRost/count<<" см";
    else
        std::cout<<"В массиве нет женщин";
    std::cout<<'\n';
    system("pause");
    return 0;
}
EnzoMatrix
120 / 120 / 5
Регистрация: 14.03.2009
Сообщений: 462
18.08.2009, 22:00     C++ не могу в нём разобраться (заход 2) #5
Цитата Сообщение от odip Посмотреть сообщение
Эта задача явно не для начинающих.
если ничего не путаю, то задача не очень трудная, по крайней мере в плане реаизации:
для n<=4 раскладываем на два слогаемых: (n-1)+1
для n>4:
1. если делится на 3 без остатка то на n/3 слогаемых 3+3+3+3+...+3
2. если остаток=1 то на n/3 слогаемых 3+3+3+3+...+3+4
3. если остаток=2 то на n/3+1 слогаемых 3+3+3+3+...+3+2
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 22:36     C++ не могу в нём разобраться (заход 2) #6
№6
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
int main()
{
    setlocale(LC_ALL,"Rus");
    int n, i;
    std::cout<<"Введите количество элементов массива:\n",std::cin>>n;
    int *mas = new int[n];
    std::cout<<"Введите элементы массива:\n";
    for(i = 0; i < n; ++i)
        std::cin>>mas[i];
    system("cls");
    std::cout<<"Введенный массив из "<<n<<" элементов:\n";
    for(i = 0; i < n; ++i)
        std::cout<<mas[i]<<' ';
    int *buf1 = new int[n];
    int *buf2 = new int[n];
    int j(0), k(0);
    for(i = 0; i < n; ++i)
        if(mas[i]&1)
            buf1[j] = mas[i], j++;
        else
            buf2[k] = mas[i], k++;
    for(i = 0; i < k; ++i)
        mas[i] = buf2[i];
    for(i = j; i < n; ++i)
        mas[i] = buf1[i - j];
    std::cout<<"\nРезультат:\n";
    for(i = 0; i < n; ++i)
        std::cout<<mas[i]<<' ';
    std::cout<<'\n';
    system("pause");
    return 0;
}

и последний на сегодня №8 скоро будет

Добавлено через 23 минуты 56 секунд
№8
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
int main()
{
    setlocale (LC_ALL, "Russian");
    int n, m, i, j;
    std::cout<<"Введите размерность:\nn = ", std::cin>>n, std::cout<<"m = ", std::cin>>m; 
    int **matr = new int*[n];
    for(i = 0; i < n; ++i)
        matr[i] = new int[m];
    std::cout<<"Введите матрицу размерностью "<<n<<'x'<<m<<":\n";
    for (i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            std::cin>>matr[i][j];
    system("cls");
    std::cout<<"Введенная матрица:\n";
    for(i = 0; i < n; ++i, std::cout<<'\n')
        for(j = 0; j < m; ++j)
            std::cout<<matr[i][j]<<' ';
    int *mas = new int[n];
    for(i = 0; i < n; ++i)
    {
        mas[i] = 0;
        for(j = 0; j < m; ++j)
            if((matr[i][j] > 0) && !(matr[i][j]&1))
                mas[i]+=matr[i][j];
    }
    for(int k = 0; k < n - 1; ++k)
        for(i = 0; i < n - 1; ++i)
            if(mas[i]>mas[i + 1])
            {
                for(j = 0; j < m; ++j)
                    matr[i][j] ^= matr[i + 1][j] ^= matr[i][j] ^= matr[i + 1][j];
                mas[i] ^= mas[i + 1] ^= mas[i] ^= mas[i + 1];
            }
    std::cout<<"Результат:\n";
    for(i = 0; i < n; ++i, std::cout<<'\n')
        for(j = 0; j < m; ++j)
            std::cout<<matr[i][j]<<' ';
    system("pause");
    return 0;
}
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
18.08.2009, 23:02     C++ не могу в нём разобраться (заход 2) #7
2EnzoMatrix: Похоже ты прав, но как это доказать
EnzoMatrix
120 / 120 / 5
Регистрация: 14.03.2009
Сообщений: 462
18.08.2009, 23:14     C++ не могу в нём разобраться (заход 2) #8
не знаю, из разряда *опой чую, объяснить не могу=)
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
19.08.2009, 11:53     C++ не могу в нём разобраться (заход 2) #9
Формулировка задачи №4 некорректная.
Вот решение задачи №9

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
#include "stdafx.h"
#include <iostream>
#include <string>
#include <Windows.h>
using namespace std;
 
int main(int argc, char* argv[])
{
        SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
        int i, j, a, temp;
        string region;
        cout<<"Введите количество детских садов"<<endl;
        cin>>i;
        string *naim_sada;
        naim_sada= new string[i];
        string *raion;
        raion= new string[i];
        int *nom_sada;
        nom_sada= new int[i];
        int *kol_det;
        kol_det= new int[i];
        int *plata;
        plata= new int[i];
        for(j=0; j<i; j++)
        {
            cout<<"Введите наименование "<<j+1<< " детского сада"<<endl; cin>>naim_sada[j];
            cout<<"Введите номер "<<j+1<< " детского сада"<<endl; cin>>nom_sada[j];
            cout<<"Введите количество детей в "<<j+1<<" саду"<<endl; cin>>kol_det[j];
            cout<<"Введите район города "<<j+1<<" детского сада"<<endl; cin>>raion[j];
            cout<<"Введите месячную плату в (руб) в "<<j+1<<" детском саду"<<endl; cin>>plata[j];
        }
        cout<<"Введите наименование района города где необходимо посчитать детей"<<endl;
        cin>>region;
        temp=0;
        for (j=0; j<i; j++)
        {
            if(raion[j]==region)
                temp+=kol_det[j];
        }
        cout<<"Количество детей в садах в районе:"<<region<<":   "<<temp<<endl;
        temp=0;
        a=0;
        for (j=0; j<i; j++)
        {
            if(plata[j]>temp)
            {
                temp=plata[j];
                a=j;
            }
        }
        cout<<"Самым дорогим садом является:"<<endl;
        cout<<"Наименование сада: "<<naim_sada[a]<<endl;
        cout<<"№ детского сада: "<<nom_sada[a]<<endl;
        cout<<"Количество детей: "<<kol_det[a]<<endl;
        cout<<"Наименование района: "<<raion[a]<<endl;
        cout<<"Плата за месяц в рублях: "<<plata[a]<<endl;
        return 0;
}
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
19.08.2009, 12:49     C++ не могу в нём разобраться (заход 2) #10
valeriikozlov, я думаю использование структур в девятой задаче более удобно вот
пример
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
struct ChGarden
{ 
    char nazv[20];
    int kold;
    char raj[20];
    int stoim;
};
std::istream& operator>>(std::istream& in, ChGarden &child)
{
    std::cout<<"Название\n> ", in>>child.nazv;
    std::cout<<"Количество детей\n> ", in>>child.kold;
    std::cout<<"Район\n> ", in>>child.raj;
    std::cout<<"Стоимость\n> ", in>>child.stoim;
    return in;
}
std::ostream& operator<<(std::ostream& out, ChGarden &child)
{
    std::cout<<"Название\n> ", out<<child.nazv;
    std::cout<<"\nКоличество детей\n> ", out<<child.kold;
    std::cout<<"\nРайон\n> ", out<<child.raj;
    std::cout<<"\nСтоимость\n> ", out<<child.stoim<<'\n';
    return out;
}
int main()
{
    setlocale(LC_ALL,"Rus");
    const int n = 2;
    ChGarden pointer[n];
    int i;
    for(i = 0; i < n; ++i)
        std::cout<<"\nДетский сад № "<<i+1<<':'<<std::endl,
        std::cin>>pointer[i];   
    std::cout<<"\nВведите район:\n";
    char rajon[20];
    std::cin>>rajon;
    std::cout<<"\nРезультат:\n";
    int count(0), max(0), index(0);
    for(i = 0; i < n; ++i)
    {
        if(strncmp(strlwr(pointer[i].raj), strlwr(rajon), strlen(rajon)) == 0)
            count+=pointer[i].kold;
        if(pointer[i].stoim > max)
        {
            max = pointer[i].stoim;
            index = i;
        }
    }
    if(count)
        std::cout<<"Количество детей в детских садах "<<rajon<<" района:\n"<<count;
    else
        std::cout<<"В этом районе детских садов нету";
    std::cout<<'\n';
    std::cout<<"\nСамый дорогой детский сад №"<<index+1<<":\n"<<pointer[index];
    system("pause");
    return 0;
}
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
19.08.2009, 17:47     C++ не могу в нём разобраться (заход 2) #11
Формулировка задачи №4 некорректная.
Раскрой свою мысль подробнее - в чем именно некорректная ?
Школьники указывают серию и номер своего билета - 5 штук.
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
19.08.2009, 18:03     C++ не могу в нём разобраться (заход 2) #12
odip, если думать логически:
есть матрица 5х4
Код
№ билета | серия | название выигрыша | цена приза
С этим вроде ясно. Но вопрос сколько из них было выигрышными довольно спорный. Если рассматривать с точки зрения теории игр, то да, формулировка некорректная, потому как не сказано каков тираж и сколько из них выигрышных, тогда надо было считать какие шансы что-то выиграть у этих 5 билетов.
Если ее никак не рассматривать, то все довольно примитивно. Пользователь вводит
Код
1 | aa0001 | 0 | 0
2 | aa0001 | 0 | 0
3 | ab0002 | 1 | 500
4 | ac0003 | 0 | 0
5 | aa0004 | 2 | 400
тогда просто
C++
1
2
3
for(i = 0; i < 5; ++i)
    if(schoolboy[i][3])
        count++;
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
19.08.2009, 18:10     C++ не могу в нём разобраться (заход 2) #13
А я думаю не так.
Есть матрица N*4 - матрица выигрыша всего тиража.
Потом приходят 5 школьников и вводят 10 чисел.
Нужно вывести одно число - сколько среди них выигрышных билетов.
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
19.08.2009, 18:18     C++ не могу в нём разобраться (заход 2) #14
Грубо говоря есть большая такая база(таблица выигрышей), там выбираются билеты номера которых ввели и считается количество ненулевых значений в 4 столбце? Что ж, вполне логично . Значит такое задание и будет
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.08.2009, 18:25     C++ не могу в нём разобраться (заход 2)
Еще ссылки по теме:
C++ не могу разобраться с Условием!
С циклом for не могу разобраться C++
C++ Не могу разобраться с программой в С++
не могу разобраться с typedef C++
Не могу разобраться в коде C++

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

Или воспользуйтесь поиском по форуму:
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
19.08.2009, 18:25     C++ не могу в нём разобраться (заход 2) #15
А как еще можно понять текст этого задания ?
И кстати ничего в 4 столбце проверять нужно - из текста задания следует что все билеты попавшие в эту таблицу уже являются выигрышными, а тебя ведь не просят подсчитать сумму выигранных денег.
Yandex
Объявления
19.08.2009, 18:25     C++ не могу в нём разобраться (заход 2)
Ответ Создать тему
Опции темы

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