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

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

Войти
Регистрация
Восстановить пароль
 
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,278
Завершенные тесты: 1
#1

задaчки про массивы - C++

22.11.2010, 17:49. Просмотров 404. Ответов 7
Метки нет (Все метки)

вот прошли одномерные и двумерные массивы...задачки в книжке очень легкие...Может вы задайте мне задачки порешать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2010, 17:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос задaчки про массивы (C++):

Про массивы. - C++
Пытался анализировать вместимость стандартных массивов в С++. в том числе и 2мерных. оказывается есть значительные ограничения. И при чем...

Про массивы - C++
Привет всем! Можете подсказать ответ на такой вопрос. Создаю статический массив: unsigned char buf; ...

задача про массивы - C++
упорядочить по убыванию положительные эл-ты массмва, сохраняя остальные эл-ты на прежних местах

про двумерные массивы - C++
Даны два двумерных массива целых чисел с размерами (5х5) эле¬ментов каждый. Подсчитать произведение элементов главных диагоналей в каждом...

Задачка про массивы - C++
Только начала изучать программирование, пытаюсь разбиратся ,но не всё так просто , помогите пжлст решить задачку на массивы Даны два...

Про массивы и указатели - C++
#include <iostream> using namespace std; int Digit = { {1,8,6,7},{3,2,9,4},{5,1,2,7},{8,6,2,5} }, test; int main() { ...

7
judarical
5 / 4 / 0
Регистрация: 06.11.2010
Сообщений: 92
22.11.2010, 18:00 #2
Да, друг! Это-к тебя угораздило!!!
0
silent_1991
Эксперт С++
4984 / 3041 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
22.11.2010, 18:00 #3
А что сложного можно придумать с массивами? Массивы - вспомогательное средство для решения более сложных задач - это просто хранение данных в более удобном виде, чем куча переменных... Так что во всех сложных задачах, где используются массивы, вся сложность заключается далеко не в массивах...
0
judarical
5 / 4 / 0
Регистрация: 06.11.2010
Сообщений: 92
22.11.2010, 18:08 #4
Вот, только что "поупражнялся"
Работа со строками!

Добавлено через 1 минуту
Самое элементарное: матрицы повычисляй, сложение, умножение, вычисление определителя - вот тебе и разминочка будет!!!

Добавлено через 1 минуту
А если массивы - легко, со списками, с деревьями поработай!
0
eddilou
3 / 3 / 0
Регистрация: 21.11.2010
Сообщений: 194
22.11.2010, 18:24 #5
Цитата Сообщение от ^Tecktonik_KiLLeR Посмотреть сообщение
вот прошли одномерные и двумерные массивы...задачки в книжке очень легкие...Может вы задайте мне задачки порешать?
может мне поможешь решить задачку??? написать функции
вот задание
Написать и протестировать функцию для решения следующей задачи.
В матрице А размера m*n сдвинуть строки вверх на одну и поставить первую строку на место последней.

и немного пояснить для чего используются &&
и к примеру while (scanf("%d", &m) == 1 && m > 10) как мне говорили если интересно глянь темы
функции для матрицы в Си
и
как написать функции для печати и сдвига строк в матрице на С
они ниже твоей темы чуток
0
exovoini
0 / 0 / 0
Регистрация: 17.10.2010
Сообщений: 44
22.11.2010, 18:48 #6
Здравствуйте. Помогите пожалуйста решить задачу: Дана прямоугольная матрица разм. 3х4. Найти сумму элементов в строке содержащий максимальный элемент матрицы.
Как найти сумму в конкретной строке я еще более менее разобрался... а вот с максимальным элементом не понял. Я вообще в этом не разбираюсь а по информатике задали. Напишите пожалуйска решение если не трудно. Спасибо!
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,278
Завершенные тесты: 1
22.11.2010, 20:48  [ТС] #7
Цитата Сообщение от eddilou Посмотреть сообщение
может мне поможешь решить задачку??? написать функции
вот задание
Написать и протестировать функцию для решения следующей задачи.
В матрице А размера m*n сдвинуть строки вверх на одну и поставить первую строку на место последней.
нет :"(...не смог решить...уже как час голову ломаю...код есть,нифига не меняет местами

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
void main()
{
    srand(time(0));
    const int n=5;
    int x[n][n];
    int buff[n]={0};
    cout<<"BEFORE"<<endl;
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        {
            x[i][j]=rand()%10;
            cout<<x[i][j]<<" ";
                
        }
        cout<<endl;
    }
        cout<<endl<<endl;
        cout<<"AFTER"<<endl;    
        for(int i=i;i<n;i++)
        {
        for(int j=1;j<n;j++)
        {
            buff[i]=x[i][j];
            x[i][j]=x[--i][--j];
            x[--i][--j]=buff[i];
                    
        }
        }
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        cout<<x[i][j]<<" ";
        cout<<endl;
    }
    cout<<endl;
}
буффер сначала объявил как одномерный массив,потом как двумерный..Не работает..
Может программисты поумнее ответят как?И мне интересно..

Цитата Сообщение от eddilou Посмотреть сообщение
и немного пояснить для чего используются &&
например
C++
1
if(x>y && y>z)//Если x>y И y>z то...
Цитата Сообщение от eddilou Посмотреть сообщение
scanf("%d", &m) == 1 && m > 10
функция scanf не знаю,но как понял так:если вводимое число ровно одному и если m больше чем 10 то...

Добавлено через 10 минут
exovoini
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
void main()
{
    srand(time(0));
    const int n=5;
    int x[n][n];
    int max=0,k=0,s=0;
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        {
            x[i][j]=rand()%100;
            cout<<x[i][j]<<" ";
                
        }
        cout<<endl;
    }
        
    max=x[0][0];
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        {
            if(max<x[i][j])
            {
                max=x[i][j];
                k=i;
            }
        }
    }
 
    for(int i=0;i<n;i++)
    {
        s=s+x[k][i];
    }
    cout<<"s="<<s<<endl<<"max="<<max<<endl<<"k="<<k<<endl;
        //s=summa,max=max element,k=stroka s max elementom (tolko dlya proverki)
}
Добавлено через 56 секунд
Пожалуйста,мудрейшие, оцените код с задачей
Цитата Сообщение от exovoini Посмотреть сообщение
Найти сумму элементов в строке содержащий максимальный элемент матрицы.
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
void main()
{
    srand(time(0));
    const int n=5;
    int x[n][n];
    int max=0,k=0,s=0;
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        {
            x[i][j]=rand()%100;
            cout<<x[i][j]<<" ";
                
        }
        cout<<endl;
    }
        
    max=x[0][0];
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<n;j++)
        {
            if(max<x[i][j])
            {
                max=x[i][j];
                k=i;
            }
        }
    }
 
    for(int i=0;i<n;i++)
    {
        s=s+x[k][i];
    }
    cout<<"s="<<s<<endl<<"max="<<max<<endl<<"k="<<k<<endl;
 
}
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
22.11.2010, 21:30 #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
48
49
50
51
52
53
54
55
56
57
58
59
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <iomanip>
 
void swap(int** first, int** second);
void print(int** Arr, int n, int m);
 
int main()
{
    int min=1;
    int max=100;
    srand(static_cast<unsigned>(time(0)));
    int n, m;
    std::cout<<"Enter n, m: ";
    std::cin>>n>>m;
    int** Arr;
    Arr=new int*[n];
    for(int i=0; i<n; ++i)
        Arr[i]=new int[m];
    for(int i=0; i<n; ++i)
    {
        for(int j=0; j<m; ++j)
        {
            Arr[i][j]=min+rand()%max;
        }
    }
    std::cout<<"Matrix\n";
    print(Arr, n, m);
    for(int i=0; i<n-1; ++i)
    {
        swap(&Arr[i], &Arr[i+1]);
    }
    std::cout<<"Transformed matrix\n";
    print(Arr, n, m);
    for(int i=0; i<n; ++i)
        delete[] Arr[i];
    delete[] Arr;
    return 0;
}
 
void print(int** Arr, int n, int m)
{
    for(int i=0; i<n; ++i)
    {
        for(int j=0; j<m; ++j)
        {
            std::cout<<std::setw(4)<<Arr[i][j]<<' ';
        }
        std::cout<<'\n';
    }
}
 
void swap(int** first, int** second)
{
    int* temp=*first;
    *first=*second;
    *second=temp;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2010, 21:30
Привет! Вот еще темы с ответами:

Ошибка в задаче про массивы - C++
Написал прогу,строго не судите,но какой то косяк здесь не знаю даже где,она должна Найти сумму элементов массива, которые находятся ...

Программа про динамические массивы - C++
Нужна программа, объявляющая динамический двухмерный массив с заданным вторым параметром(к примеру, 3). И затем(после обьявления массива)...

Вопрос про указатели на массивы - C++
В книге написано int a; int *p; p = &amp;a; //У меня выдает ошибку p = &amp;a; //Так работает p = ПОЛУЧИТЬ_адрес_объекта - Это...

Пара вопросов про массивы - C++
у меня есть пара вопросов,хотя один можно сказать относится к функциям..но тема у нас в курсе-массивы. Так вот: 1.void main() { const...


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

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
22.11.2010, 21:30
Ответ Создать тему
Опции темы

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