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

Найти 100 первых простых чисел - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 253, средняя оценка - 4.74
Raynk
0 / 0 / 0
Регистрация: 17.08.2009
Сообщений: 6
17.08.2009, 09:04     Найти 100 первых простых чисел #1
Привет всем помогите пожалуйста кто может у меня такая проблема не могу решить задачи по C++ потому что я не понимаю этот язык программирования вот несколько заданий.

1. Найти 100 первых простых чисел.
2. Дано число n. Напечатать те натуральные числа, квадрат которых не превышает n.
3. Дан массив x [1]..x[n] целых чисел. Не используя других массивов, переставить элементы массива в обратном порядке.
4. Дано слово. Определить, одинаковы ли второй и четвертый символы в нем.
5. Дано слово. Получить его часть, образованную идущими подряд буквами, начиная с k-й и кончая m-й, (k и m вводятся с клавиатуры).
6. Дана прямоугольная таблица a[1:n,1:m]. Найти минимальный из максимумов строк, т.е. min (max aij ), 1 <= i <= n, 1 <= j <= m
7. Все элементы матрицы, кроме диагональных, заменить единицами.
8. Дана квадратная таблица a[1:n,1:n]. Найти номер строки, содержащей наибольшее число нулей.
9. В соревнованиях по прыжкам в длину участвовали N-спортсменов. Каждый спортсмен мог сделать М-попыток. Результаты (длины прыжков) занесены в таблицу A[1:M,1:N]. Если результат не засчитывали, то вместо длины прыжков заносили ноль. Составить алгоритм, который дает возможность определить лучший результат К-ого спортсмена.
10. Дан массив данных о работающих на фабрике: фамилия, имя, отчество, адрес (улица, дом, квартира) и дата поступления на работу (месяц, год). Определить, есть ли в списке Ивановы (Иванов, Иванова), если есть, то вывести их адрес (адреса) и посчитать из них количество, проработавших не менее двух лет на сегодняшний день.
11. Даны два одномерных массива A[n] и B[n]. Получить массив С[2,n], первая строка которого – упорядоченные по возрастанию элементы B[n], вторая строка – упорядоченные по убыванию элементы A[n]. Использовать алгоритм вставки.

Пожалуйста решите эти задания кто сможет зарание благодарен!!!!!!!!!!!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
02.08.2011, 07:47     Найти 100 первых простых чисел #61
Цитата Сообщение от Olga_ Посмотреть сообщение
А кто умеет эффективно удалять элементы из массива? Это вопрос на засыпку. Это очень просто, но все же
Неэффективно, но просто(для строк)
C++
1
2
3
void erase(char * x){
    while ( *x = *(x+++1) );
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Olga_
 Аватар для Olga_
840 / 182 / 16
Регистрация: 01.08.2011
Сообщений: 502
02.08.2011, 07:53     Найти 100 первых простых чисел #62
Цитата Сообщение от diagon Посмотреть сообщение
Неэффективно, но просто(для строк)
C++
1
2
3
void erase(char * x){
    while ( *x = *(x+++1) );
}
Например, есть массив действительных чисел. Требуется написать функцию, которая в качестве параметра получает значение x и удаляет все эти x из массива. Результат функции - новый размер массива.
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
02.08.2011, 08:00     Найти 100 первых простых чисел #63
Цитата Сообщение от Olga_ Посмотреть сообщение
0. Бывает и такое
0.0. Конечно нельзя физически удалить, можно как-то перегруппировать элементы и в переменную, отвечающую за размерность записать новое значение, хотя в памяти массив может занимать гораздо больше места. Речь шла не о создании нового массива, а о манипуляции со старым.
1.,2. Удаляемых элементов может быть несколько (например, удалить все нулевые элементы).
3. Хотелось бы увидеть алгоритм без классов, а чистый код.

P.S. Легче написать код, чем спорить.
Я не спорю. Я просто использую стандарт.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
template<class _FwdIt,
    class _Ty> inline
    _FwdIt _Remove(_FwdIt _First, _FwdIt _Last, const _Ty& _Val)
    {   // remove each matching _Val
    _FwdIt _Next = _First;
    for (++_First; _First != _Last; ++_First)
        if (!(*_First == _Val))
            *_Next++ = _Move(*_First);
    return (_Next);
    }
 
template<class _FwdIt,
    class _Ty> inline
    _FwdIt remove(_FwdIt _First, _FwdIt _Last, const _Ty& _Val)
    {   // remove each matching _Val
    _First = _STD find(_First, _Last, _Val);
    if (_First == _Last)
        return (_First);    // empty sequence, all done
    else
        return (_Rechecked(_First,
            _Remove(_Unchecked(_First), _Unchecked(_Last), _Val)));
    }
Olga_
 Аватар для Olga_
840 / 182 / 16
Регистрация: 01.08.2011
Сообщений: 502
02.08.2011, 08:05     Найти 100 первых простых чисел #64
Цитата Сообщение от ValeryLaptev Посмотреть сообщение
Я не спорю. Я просто использую стандарт.
Да, Вы правы, стандарты - вещь хорошая, STL вещь нужная, но если не уметь своими ручками писать красивые и ОЧЕНЬ эффективные алгоритмы, то на одних классах далеко не уехать. Чтобы голова хорошо работала, надо уйму алгоритмов с чистого листа прописать.
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
02.08.2011, 08:05     Найти 100 первых простых чисел #65
Цитата Сообщение от Olga_ Посмотреть сообщение
Например, есть массив действительных чисел. Требуется написать функцию, которая в качестве параметра получает значение x и удаляет все эти x из массива. Результат функции - новый размер массива.
???
Вам массив или контейнер вроде вектора нужен?
Для массива, во-первых нужно размер передавать, во-вторых что значит новый размер?
В си-стиле realloc делать что ли?
P.S. STL те еще задроты писали, неумелыми руками их сложно назвать...
P.P.S. алгоритмы вещь хорошая, но есть масса других алгоритмов. Удаление из массива есть во многих языках в стандартных библиотеках. Зачем изобретать велосипед?
Olga_
 Аватар для Olga_
840 / 182 / 16
Регистрация: 01.08.2011
Сообщений: 502
02.08.2011, 08:15     Найти 100 первых простых чисел #66
Цитата Сообщение от diagon Посмотреть сообщение
???
Вам массив или контейнер вроде вектора нужен?
Для массива, во-первых нужно размер передавать, во-вторых что значит новый размер?
В си-стиле realloc делать что ли?
P.S. STL те еще задроты писали, неумелыми руками их сложно назвать...
Никаких контейнеров и динамических массивов. Функция типа
void Del(double *a, int n, double x, int *m),
где a - массив, n - размер массива, x - значение удаляемых элементов, m - новый размер массива (формально новый размер, в памяти, естественно, массив будет занимать столь места, что и прежде).

Добавлено через 5 минут
Цитата Сообщение от diagon Посмотреть сообщение
???
P.P.S. алгоритмы вещь хорошая, но есть масса других алгоритмов. Удаление из массива есть во многих языках в стандартных библиотеках. Зачем изобретать велосипед?
Это простой тест на сообразительность и все. Кто желает, тот может поучаствовать.
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
02.08.2011, 09:57     Найти 100 первых простых чисел #67
Цитата Сообщение от Olga_ Посмотреть сообщение
Да, Вы правы, стандарты - вещь хорошая, STL вещь нужная, но если не уметь своими ручками писать красивые и ОЧЕНЬ эффективные алгоритмы, то на одних классах далеко не уехать. Чтобы голова хорошо работала, надо уйму алгоритмов с чистого листа прописать.
Ольга, я все это уже проделал в свое время. И тут тоже надо меру знать: вместо придумывания алгоритмов - почитать теорию и по теории реализовать.
Lusin
0 / 0 / 0
Регистрация: 07.08.2011
Сообщений: 19
09.08.2011, 19:24     Найти 100 первых простых чисел #68
N2

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
void f(int);
 
int main() {
    
    f(20);
    
return 0;
}
 
void f(int n){
    for (int i=1; i<n; i++){
    int sqr=i*i;
if(sqr<=n)
    cout << i << " " ;
    }
}
Vl.zemtsov
0 / 0 / 0
Регистрация: 27.02.2012
Сообщений: 32
27.02.2012, 18:20     Найти 100 первых простых чисел #69
№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
#include <iostream> 
using namespace std;
 
bool proverka (int a)
{
    if (a==1) return 1;
    int k=0;
    for (int i=2; i<=a-1; i++)
        if (a%i!=0) k++;
    if (k==(a-2)) return 1;
    if (k!=(a-2)) return 0;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    int flag=0;
    for (int j=1; j<=2147483647; j++)
    {
        if (proverka(j)) 
        {
            cout<<j<<endl;
            flag++;
        }
        if (flag==100) break;
    }
    system ("pause");
    return 0;
}


Добавлено через 19 минут
№2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int n;
    cout<<"Vvedite chislo n"<<endl;
    cin>>n;
    if (n<=0) cout<<"Vy vveli chislo ne prevyshaushee 0 \n";
    if (n>0)
        for(int i=(-n);i<=n;i++)
            if ((i*i)<=n) cout<<i<<endl;
    system("pause");
    return 0;
}


Добавлено через 30 минут
Цитата Сообщение от Raynk Посмотреть сообщение
3. Дан массив x [1]..x[n] целых чисел. Не используя других массивов, переставить элементы массива в обратном порядке.
Как я понял задан просто одномерный массив (1 строка)
№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
#include <iostream>
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int n;
    cout<<"Vvedite kolichestvo elementy massiva";
    cin>>n;
    cout<<"Vvedite elementy massiva";
    int *a;
    a = new int[n];
    for(int i=1; i<=n;i++)
        cin>>a[i];
    int x;
    for(int j=1;j<=(n/2);j++)
    {
        x=a[j];
        a[j]=a[n-j+1];
        a[n-j+1]=x;
    }
    for(int k=1;k<=n;k++)
        cout<<a[k]<<endl;
    delete a[];
    system("pause");
    return 0;
}


Добавлено через 51 минуту
Цитата Сообщение от Raynk Посмотреть сообщение
4. Дано слово. Определить, одинаковы ли второй и четвертый символы в нем.
Наверно правильнее будет сначала определить кол-во букв в слове, а потом создать массив на это слово, но я не запарился
№4
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
#include <iostream>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    char *slovo;
    slovo = new char[100];
    cout<<"vvedite slovo";
    cin >> slovo;
    if (strlen(slovo)<4)
    {
        cout<<"V slove ne moshet byt' men'she 4 bukv\n";
        system("pause");
        return 0;
    }
    if (slovo[2]==slovo[4])
    {
        cout<<"2 i 4 bukvy sovpadaut\n";
    }
    else 
    {
        cout<<"2 i 4 bukvy ne sovpadaut\n"<<' ';
    };
    delete slovo[];
    system("pause");
    return 0;
}
fasked
27.02.2012, 18:44
  #70

Не по теме:

Цитата Сообщение от Olga_ Посмотреть сообщение
Да, Вы правы, стандарты - вещь хорошая, STL вещь нужная, но если не уметь своими ручками писать красивые и ОЧЕНЬ эффективные алгоритмы, то на одних классах далеко не уехать. Чтобы голова хорошо работала, надо уйму алгоритмов с чистого листа прописать.
Это хороший подход, но нужен он только студентам

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.07.2012, 09:14     Найти 100 первых простых чисел
Еще ссылки по теме:

4. Найти N первых пар простых чисел, которые отличались бы друг от друга на 2 C++
Найти 10 первых натуральных чисел, оканчивающихся на цифру 7 кратных числу 9, не меньших 100 (Pascal -> C++) C++
Найти сто первых простых чисел C++

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

Или воспользуйтесь поиском по форуму:
David Sylva
 Аватар для David Sylva
1281 / 943 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
15.07.2012, 09:14     Найти 100 первых простых чисел #71
Может кому пригодятся все задачи

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
#include <iostream>
using namespace std; 
int main() 
{ 
    int i, j; 
    bool flag; 
    int count = 0;
 
    for ( i = 2; i < 200; i++) 
    { 
        flag = true; 
        for ( j = 2; j <= (i / 2); j++) 
        { 
            if( i % j == 0) 
                flag = false; 
        } 
        if(flag)  
        {
            cout << i << endl;  
            count++;  
        }
        if( count == 100) 
            break; 
    } 
}


2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream> 
using namespace std; 
int main() 
{
    int n = 100; 
    int i = 1; 
    int square;
    while(true) 
    {
        square = i * i;
            if(square > n) 
                break; 
            else 
                cout << i << " " << square << endl;  
            i++;
    } 
}


3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std; 
int main() 
{   
    const int size = 6;
    int array[size] = { 1, 2, 3, 4, 5, 6 }; 
    int i; 
    int temp;
    
    for ( i = 0; i < size / 2; i++) 
    { 
         temp = array[i]; 
         array[i] = array[size-1-i]; 
         array[size-1-i] = temp; 
    } 
 
    for ( i = 0; i < size; i++) 
        cout << array[i] << " ";
}


4
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream> 
using namespace std; 
int main() 
{ 
    char str[] ="Barcelona"; 
 
    if(str[1] == str[3]) 
        cout << "Yes"; 
    else 
        cout << "No " << endl;
}


5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream> 
using namespace std; 
int main() 
{ 
    char str[] = "Barcelona "; 
    char N, M; 
 
    cout << "Inter N "<< endl; 
    cin >> N; 
    cout << "Inter M " << endl;
    cin >> M;
 
    for ( int i = 0; i < strlen(str); i++) 
        if(str[i] == N || str[i] <= M) 
            cout << str[i] << " ";
}


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
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
#include <iostream> 
#include <iomanip>
using namespace std; 
int main() 
{   
    setlocale(0, "rus"); 
    int n, m;  
    int i, j;
    int sum = 0; 
    int str = 0;
    int**matrix;  
    int max_sum_str = 0;
    cout << "Введите размерность n " << endl; 
    cin >> n; 
    cout << "Введите размерность m " << endl;
    cin >> m;  
 
    matrix = new int*[n]; 
    for ( i = 0; i < m; i++) 
        matrix[i] = new int[m];  
 
 
    for ( i = 0; i < n; i++) 
        for ( j = 0; j < m; j++) 
        { 
            cout << "Введите число " << endl; 
            cin >> matrix[i][j]; 
        } 
        cout << endl; 
 
        cout << "Исходная матрица " << endl;
 
        for ( i = 0; i < n; i++) 
            for ( j = 0; j < m; j++) 
            { 
                if( j % m == 0) 
                    cout << endl; 
                cout << setw(3) << matrix[i][j]; 
            }  
            cout << endl;  
 
            for ( i = 0; i < n; i++) 
                for ( j = 0; j < m; j++) 
                { 
                    sum+=matrix[i][j]; 
                    if(sum > max_sum_str) 
                    { 
                        max_sum_str = sum; 
                        str = i; 
                    } 
                    sum = 0; 
                } 
                int min = matrix[str][0];
                for ( i = 1; i < m; i++)  
                    if(min > matrix[str][i]) 
                        min = matrix[str][i]; 
 
                cout << "Минимальный элемент в максимальной строке " << min << endl;
 
 
}



7
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
#include <iostream> 
#include <ctime> 
#include <cstdlib> 
#include <iomanip> 
using namespace std; 
int main() 
{   
    srand((unsigned) time(0));
    const int size = 5; 
    int matrix[size][size]; 
    int i, j;
    
 
    for ( i = 0; i < size; i++) 
        for ( j = 0; j < size; j++) 
            matrix[i][j] = 2 + rand() % 8; 
 
    for ( i = 0; i < size; i++) 
        for ( j = 0; j < size; j++) 
        { 
            if( j % size == 0) 
                cout << endl; 
            cout << setw(3) << matrix[i][j]; 
        } 
        cout << endl; 
 
        for ( i = 0, j = 4; i < size; i++, j--) 
            matrix[i][j] = 0; 
 
        for ( j = 0; j < size; j++) 
            matrix[j][j] = 0;
 
 
        for ( i = 0; i < size; i++) 
        for ( j = 0; j < size; j++) 
        { 
            if( j % size == 0) 
                cout << endl; 
            cout << setw(3) << matrix[i][j]; 
        } 
        cout << endl; 
 
}


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
41
42
43
44
45
46
47
#include <iostream> 
#include <ctime> 
#include <cstdlib> 
#include <iomanip> 
using namespace std; 
int main() 
{   
    setlocale(0, "rus");
    srand((unsigned) time(0));
    const int size = 5; 
    int matrix[size][size]; 
    int i, j;  
    int count = 0; 
    int max_str = 0; 
    int max_count = 0;
 
 
    for ( i = 0; i < size; i++) 
        for ( j = 0; j < size; j++) 
            matrix[i][j] = rand() % 5; 
 
    for ( i = 0; i < size; i++) 
        for ( j = 0; j < size; j++) 
        { 
            if( j % size == 0) 
                cout << endl; 
            cout << setw(3) << matrix[i][j]; 
        } 
        cout << endl; 
 
        for ( i = 0; i < size; i++)  
        {
            for ( j = 0; j < size; j++) 
            { 
                if(matrix[i][i] == 0) 
                    count++; 
            } 
            if(max_count < count) 
            { 
                max_count = 0; 
                max_str = i; 
            }  
            count = 0; 
        }
 
            cout << "Наибольшие количесво 0 в строке " << max_str+1 << endl;
}


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
#include <iostream> 
using namespace std; 
int main() 
{   
    setlocale(0, "rus");
    int N, M; 
    int** matrix; 
    int i, j; 
    int k; 
    int max = 0;
 
    cout << "Введите количество спортсменов " << endl; 
    cin >> N; 
    cout << "Введите количество попыток " << endl; 
    cin >> M; 
 
    matrix = new int*[N]; 
    for ( i = 0; i < M; i++) 
        matrix[i] = new int[M]; 
 
    for ( i = 0; i < N; i++) 
    { 
        cout << "Введите результаты " << i+1 << " спортсмена " << endl; 
        for ( j = 0; j < M; j++) 
        {
        cout << "Попытка номер " << j+1 << endl; 
        cin >> matrix[i][j]; 
        } 
    } 
 
    for ( i = 0; i < N; i++) 
    { 
        cout << "Результат " << i+1 <<" спортсмена " << endl; 
        for ( j = 0; j < M; j++)  
            cout << matrix[i][j] << " ";  
        cout << endl;
    }  
 
    cout << endl; 
    cout << "Введите номер спортсмена лучший результат которого необходимо узнать " << endl; 
    cin >> k; 
 
    for ( j = 0; j < M; j++) 
        if( matrix[k-1][j] > max) 
            max = matrix[k-1][j]; 
 
    cout << "Лучший результат спорсмена " << k-1 << " равен " <<  max << endl;
}


10
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
#include <iostream>
#include <string>
using namespace std; 
 
struct Worker 
{  
    string surname; 
    string name; 
    string pat; 
    string street; 
    int number_house; 
    int number_flat; 
    int array[2]; 
}; 
 
int main() 
{   
    setlocale(0, "rus");
    const int size = 1;
    Worker wok[size]; 
    int i;  
    int count = 0; 
 
 
    for ( i = 0; i < size; i++) 
    {  
        cout << "Inter a surname worker " << endl; 
        cin >> wok[i].surname; 
        cout << "Inter a name worker " << endl; 
        cin >> wok[i].name;  
        cout << "Inter a partinaly worker " << endl;
        cin >> wok[i].pat; 
        cout << "Inter a street " << endl; 
        cin >> wok[i].street; 
        cout << "Inter a number street " << endl; 
        cin >> wok[i].number_flat;  
        cout << "Inter a number house " << endl; 
        cin >> wok[i].number_house;
        cout << "Inter a data start work (year) " << endl; 
        cin >> wok[i].array[0]; 
        cout << "Inter a data start work (month) " << endl; 
        cin >> wok[i].array[1]; 
    } 
    cout << endl << endl; 
 
    for ( i = 0; i < size; i++) 
    { 
        if(wok[i].surname == "Ivanov" || wok[i].surname == "Ivanova")
        {   
            cout << "Adress " << wok[i].street << " " 
            << wok[i].number_house << " " << wok[i].number_flat << endl; 
            if(2012 - wok[i].array[0] >= 2) 
                count++;
        }  
    }
         
    cout << "Ivanov worker 2 year " << count << endl; 
 
    return 0;
}


11
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
#include <iostream> 
#include <iomanip>
using namespace std; 
int main() 
{   
    setlocale(0, "rus");
    int* mas1; 
    int* mas2; 
    int** array;  
    int n; 
    int i, j; 
    int temp;
 
    cout << "Введите размер массива " << endl; // размер массивов
    cin >> n; 
 
    mas1 = new int[n];  // динамически выделяем память
    for ( i = 0; i < n; i++) 
    { 
        cout << "Введите элемент " << i << ")" << "  "; // заполняем массив
        cin >> mas1[i]; 
    }  
    cout << endl;
 
    mas2 = new int[n];  // динамически выделяем память под второй маасив
    for ( i = 0; i < n; i++) 
    { 
        cout << "Введите элемент " << i << ")" << "  "; // заполняем элементами
        cin >> mas2[i]; 
    } 
 
    array = new int*[2];  // динамически выделяем память для матрицы
    array[0] = new int[n]; 
    array[1] = new int[n];   
 
    for ( i = 0; i < n; i++)  // присваиваем первый массив
        array[0][i] = mas1[i]; 
 
    for ( i = 0 ; i < n; i++) // присваиваем второй массив
        array[1][i] = mas2[i];
 
    for ( i = 0; i < n - 1; i++)  // сортируем по убыванию
        for ( j = 0; j < n - 1; j++) 
            if( array[0][j] < array[0][j+1]) 
            { 
             temp = array[0][j]; 
             array[0][j] = array[0][j+1]; 
             array[0][j+1] = temp; 
            }
 
 
 
    for ( i = 0; i < n - 1; i++) // сортируем по возрастанию
        for ( j = 0; j < n - 1; j++) 
            if( array[1][j] > array[1][j+1]) 
            { 
             temp = array[1][j]; 
             array[1][j] = array[1][j+1]; 
             array[1][j+1] = temp; 
            }
 
 
    
    cout << endl << endl; 
 
    for ( i = 0; i < 2; i++)  // отсортированная матрица
        for ( j = 0; j < n; j++) 
        { 
            if( j % n == 0) 
                cout << endl; 
            cout << setw(3) << array[i][j]; 
        } 
        cout << endl; 
}
Yandex
Объявления
15.07.2012, 09:14     Найти 100 первых простых чисел
Закрытая тема Создать тему
Опции темы

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