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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 81, средняя оценка - 5.00
Dashenka_2009
2 / 2 / 0
Регистрация: 13.05.2009
Сообщений: 16
#1

с++ задачи на массивы и матрицы - C++

13.05.2009, 09:10. Просмотров 10282. Ответов 74
Метки нет (Все метки)

Люди помогите плиззззз:'( завтра уже сдавать надо)):'(
последняя надежда на вас

1. В одномерном массиве состоящем из n вещественных элементов (размерность задается именованной константой), вычислить:
- максимальный элемент массива
- сумма элементов массива, расположенных до последнего положительного элемента
Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a, b]. Освободившиеся в конце элементы заполнить нулями.

2. Дана целочисленная прямоугольная матрица. Определить сумму элементов в тех столбцах, которые не содержат отрицательных элементов.

самое беспонтовое что я в массива ничего не понямаю(((:'(
кто чем может помогиитее!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.05.2009, 09:10     с++ задачи на массивы и матрицы
Посмотрите здесь:
C++ Задачи на массивы С++
C++ Задачи на массивы
Задачи на массивы C++
Задачи на массивы в С++ C++
Массивы - задачи C++
C++ задачи на C++, на массивы
Массивы(задачи) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
17.08.2009, 23:18     с++ задачи на массивы и матрицы #41
gusca, по всей информации которая у меня была вышло
вот так
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
struct Student
{
    char fName[20];
    char lName[20];
    char group[30];
    float midMark;
};
std::istream& operator>>(std::istream& in, Student &stud)
{
    std::cout<<"Last Name\n> ", in>>stud.lName;
    std::cout<<"First Name\n> ", in>>stud.fName;
    std::cout<<"Group:\n> ", in>>stud.group;
    std::cout<<"Middle Mark\n> ", in>>stud.midMark;
    return in;
}
std::ostream& operator<<(std::ostream& out, Student &stud)
{
    std::cout<<"Last Name\n> ", out<<stud.lName;
    std::cout<<"\nFirst Name\n> ", out<<stud.fName;
    std::cout<<"\nGroup:\n> ", out<<stud.group;
    std::cout<<"\nMiddle Mark\n> ", out<<stud.midMark;
    return out;
}
int main()
{
    const int n = 5;
    Student pointer[n];
    int i;
    for(i = 0; i < n; ++i)
        std::cout<<"\nStudent # "<<i+1<<std::endl,
        std::cin>>pointer[i];
 
    int index(0);
    float min = pointer[0].midMark;
    for(i = 0; i < n; ++i)
    {
        if(min > pointer[i].midMark)
        {
            index = i;
            min = pointer[i].midMark;
        }
    }
    std::cout<<"\nRezult:\n"<<pointer[index]<<'\n';
    system("pause");
    return 0;
}
Фенрир
42 / 38 / 2
Регистрация: 05.01.2009
Сообщений: 394
17.08.2009, 23:30     с++ задачи на массивы и матрицы #42
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
   #include <algorithm>
#include <vector>
#include <iostream>
#include <string>
 
struct student
{
      std :: string name;
       float ball;
      student(std :: string _name, float _ball ) : name (_name) , ball (_ball){}
 
     bool operator < (const student& s2)
    {
      return ball < s2.ball;
    }
};
 
 
 
 
 
std :: ostream& operator << (std :: ostream& os, const student& s)
{
     return os<<s.name<<std :: endl<<s.ball<<std :: endl;
}
 
std :: istream& operator >>  (std :: istream& is, student& s)
{
    std::cout<<"Name\n";
    is>>s.name;
    std::cout<<"Ball\n";
    is>>s.ball;
    return is;
}
 
 
int main()
{
     std :: vector <student> vec;
     vec.push_back(student ("one", 3.5));
     vec.push_back(student ("two", 3.2));
     vec.push_back(student ("three", 3.7));
     vec.push_back(student ("four", 5));
     vec.push_back(student ("five", 4));
      std :: cout<<"Worse student :"
                 << * std :: min_element (vec.begin(), vec.end());
       std :: cin.get();
        return 0;
}
gorin
207 / 14 / 2
Регистрация: 18.08.2009
Сообщений: 571
18.08.2009, 10:20     с++ задачи на массивы и матрицы #43
Прива всем, помогите написать код програмы на тему "Програмирование операций з масивом структур".!

Задача:
Вивести перелік студентів, які не склали другий та третій іспит.
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 11:27     с++ задачи на массивы и матрицы #44
к посту №43
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
struct Student
{
    char fName[20];
    char lName[20];
    char group[30];
    bool exam[5];
};
std::istream& operator>>(std::istream& in, Student &stud)
{
    std::cout<<"Last Name\n> ", in>>stud.lName;
    std::cout<<"First Name\n> ", in>>stud.fName;
    std::cout<<"Group\n> ", in>>stud.group;
    std::cout<<"Exams:\n1> ", in>>stud.exam[0],
        std::cout<<"2> ", in>>stud.exam[1],
        std::cout<<"3> ", in>>stud.exam[2],
        std::cout<<"4> ", in>>stud.exam[3],
        std::cout<<"5> ", in>>stud.exam[4];
    return in;
}
std::ostream& operator<<(std::ostream& out, Student &stud)
{
    std::cout<<"Last Name\n> ", out<<stud.lName;
    std::cout<<"\nFirst Name\n> ", out<<stud.fName;
    std::cout<<"\nGroup\n> ", out<<stud.group;
    std::cout<<"\nExams:\n1> ", out<<stud.exam[0],
        std::cout<<"\n2> ", out<<stud.exam[1],
        std::cout<<"\n3> ", out<<stud.exam[2],
        std::cout<<"\n4> ", out<<stud.exam[3],
        std::cout<<"\n5> ", out<<stud.exam[4]<<'\n';
    return out;
}
int main()
{
    const int n = 5;
    Student pointer[n];
    int i;
    for(i = 0; i < n; ++i)
        std::cout<<"\nStudent # "<<i+1<<std::endl,
        std::cin>>pointer[i];
 
    std::cout<<"\nRezult:\n\n";
    for(i = 0; i < n; ++i)
        if(!pointer[i].exam[1] && !pointer[i].exam[2])
            std::cout<<pointer[i]<<std::endl;
    system("pause");
    return 0;
}
gusca
5 / 5 / 0
Регистрация: 17.08.2009
Сообщений: 168
18.08.2009, 13:43     с++ задачи на массивы и матрицы #45
Тема: Програмування операцій динамічні двомірні масиви.
В динамічній області пам’яті можна створювати двомірні масиви за допомогою операції new чи функції malloc. При виділенні пам’яті відразу ж під весь масив кількість рядків (най лівішу розмірність) можна задавати з допомогою змінної чи виразу, а кількість стовбців повинна бути константним виразом, тобто явно визначена до виконання програми. Після слова new записується тип створює мого масиву, а потім – його розмірність в квадратних дужках, наприклад:
int n;
const int m=5;
cin>>n;
int (*a)[m] = new int [n][m]; //1
int **b = (int **) new int [n][m]; //2
В цьому фрагменті показується два способи створення динамічного масиву. В операторі 1 адреса початку виділеної за допомогою new ділянки пам’яті присвоюється змінній a, визначеної як вказівник на масив з m елементів типу int. Саме такий тип значення повертаю в даному випадку операція new. Скобки необхідні, оскільки без них конструкція інтерпретувалася б як масив вказівників. Всього виділяється n елементів. В операторі 2 адреса початку виділеної ділянки пам’яті присвоюється змінній b, яка описана як «вказівник на вказівник на int», тому перед присвоєнням необхідно виконати переведення типу.
По стандарту, в цьому випадку рекомендується застосовувати іншу операцію переведення типу:
int **b = reinterpret_cast <int **> (new int [n][m]);
Звернення до елементів динамічних масивів виконується так само, як і до елементів статичних масивів, за допомогою конструкції виду а[i][j].

Добавлено через 1 минуту 55 секунд
Тема: Програмування операцій динамічні двомірні масиви.
В динамічній області пам’яті можна створювати двомірні масиви за допомогою операції new чи функції malloc. При виділенні пам’яті відразу ж під весь масив кількість рядків (най лівішу розмірність) можна задавати з допомогою змінної чи виразу, а кількість стовбців повинна бути константним виразом, тобто явно визначена до виконання програми. Після слова new записується тип створює мого масиву, а потім – його розмірність в квадратних дужках, наприклад:
int n;
const int m=5;
cin>>n;
int (*a)[m] = new int [n][m]; //1
int **b = (int **) new int [n][m]; //2
В цьому фрагменті показується два способи створення динамічного масиву. В операторі 1 адреса початку виділеної за допомогою new ділянки пам’яті присвоюється змінній a, визначеної як вказівник на масив з m елементів типу int. Саме такий тип значення повертаю в даному випадку операція new. Скобки необхідні, оскільки без них конструкція інтерпретувалася б як масив вказівників. Всього виділяється n елементів. В операторі 2 адреса початку виділеної ділянки пам’яті присвоюється змінній b, яка описана як «вказівник на вказівник на int», тому перед присвоєнням необхідно виконати переведення типу.
По стандарту, в цьому випадку рекомендується застосовувати іншу операцію переведення типу:
int **b = reinterpret_cast <int **> (new int [n][m]);
Звернення до елементів динамічних масивів виконується так само, як і до елементів статичних масивів, за допомогою конструкції виду а[i][j].
Завдання: У матриці A(mxn) знайти кількість нульових елементів та замінити їх на середнє значення матриці.
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 14:12     с++ задачи на массивы и матрицы #46
вот
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.h>
int main()
{
    int n, m, i, j, count(0);
    cout<<"\n\n\nVvedite razmernost':\nn = ", cin>>n,
        cout<<"m = ", cin>>m;
    float **matr = new float*[n];
    for(i = 0; i < n; ++i)
        matr[i] = new float[m];
 
    cout<<"\nVvedite matricy razmernost'y "<<n<<'x'<<m<<":\n";
    for (i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            cin>>matr[i][j];
    cout<<"\nVvedennaja matrica:\n";
    float mid(0);
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
        {
            mid += matr[i][j];
            cout<<matr[i][j]<<' ';
        }
 
    mid /= (n * m);
    for(i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            if(!matr[i][j])
            {
                count++;
                matr[i][j] = mid;
            }
    cout<<"\nRezyl'tat:\n";
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
            cout<<matr[i][j]<<' ';
 
    cout<<"\nKolicgestvo nylei:\n"<<count;
    cin.get();
    cin.get();
    return 0;
}
gusca
5 / 5 / 0
Регистрация: 17.08.2009
Сообщений: 168
18.08.2009, 14:32     с++ задачи на массивы и матрицы #47
M128K145, Завдання: У матриці A(mxn) знайти кількість нульових елементів та замінити їх на середнє значення матриці, у меня есть код програми
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream.h>
#include<math.h>
#include<conio.h>
int main(){
clrscr();
const int nstr=3,nstb=2;
int mas [nstr][nstb];
int j,i,imin,jmin,min;
for(i=0;i<nstr;i++){ for(j=0;j<nstb;j++){
cout<<mas[i][j]<<" ";}cout<<endl;} min=mas [0][0];
for(i=0;i<nstr;i++){ for(j=0;j<nstb;j++){
if(mas[i][j]<min){min=mas[i][j];
imin=i;jmin=j;}}}
cout<<"\n imin elementiv"<<min;
getch();
return 0;}
Тема: Програмування операцій динамічні двомірні масиви.
В динамічній області пам’яті можна створювати двомірні масиви за допомогою операції new чи функції malloc. При виділенні пам’яті відразу ж під весь масив кількість рядків (най лівішу розмірність) можна задавати з допомогою змінної чи виразу, а кількість стовбців повинна бути константним виразом, тобто явно визначена до виконання програми. Після слова new записується тип створює мого масиву, а потім – його розмірність в квадратних дужках, наприклад:
int n;
const int m=5;
cin>>n;
int (*a)[m] = new int [n][m]; //1
int **b = (int **) new int [n][m]; //2
В цьому фрагменті показується два способи створення динамічного масиву. В операторі 1 адреса початку виділеної за допомогою new ділянки пам’яті присвоюється змінній a, визначеної як вказівник на масив з m елементів типу int. Саме такий тип значення повертаю в даному випадку операція new. Скобки необхідні, оскільки без них конструкція інтерпретувалася б як масив вказівників. Всього виділяється n елементів. В операторі 2 адреса початку виділеної ділянки пам’яті присвоюється змінній b, яка описана як «вказівник на вказівник на int», тому перед присвоєнням необхідно виконати переведення типу.
По стандарту, в цьому випадку рекомендується застосовувати іншу операцію переведення типу:
int **b = reinterpret_cast <int **> (new int [n][m]);
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 14:40     с++ задачи на массивы и матрицы #48
Эт не код, эт что попало. Задание на подсчет нулей в матрице и замене их средним значением, а у тебя поиск минимального значения матрицы, да еще и индексы тянеш за собой зачем-то. Зачем тебе math спрашвается здесь нужен? я так понял надо сделать с диамическими массивами, а у тебя они статические
gusca
5 / 5 / 0
Регистрация: 17.08.2009
Сообщений: 168
18.08.2009, 14:50     с++ задачи на массивы и матрицы #49
Цитата Сообщение от M128K145 Посмотреть сообщение
Эт не код, эт что попало. Задание на подсчет нулей в матрице и замене их средним значением, а у тебя поиск минимального значения матрицы, да еще и индексы тянеш за собой зачем-то. Зачем тебе math спрашвается здесь нужен? я так понял надо сделать с диамическими массивами, а у тебя они статические
то ти сможеш написать с динамическим масивом.
Просто я делал 16 лабу а чтоби зделать 19 лабу мне нужно делать на основе 16 лаби а задание 16 лаби такой:

тема: ппрограмування операцій з двовимірними масивами

у матриці а(мхн) знайти кількість нульових елементів та замінити їх на середне значення матриці. Вот код програми провир чи я правильно склав код програми к 16 лабе
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<iostream.h>
#include<math.h>
#include<conio.h>
int main(){
clrscr();
const int nstr=3,nstb=2;
int mas [nstr][nstb];
int j,i,imin,jmin,min;
for(i=0;i<nstr;i++){ for(j=0;j<nstb;j++){
cout<<mas[i][j]<<" ";}cout<<endl;} min=mas [0][0];
for(i=0;i<nstr;i++){ for(j=0;j<nstb;j++){
if(mas[i][j]<min){min=mas[i][j];
imin=i;jmin=j;}}}
cout<<"\n imin elementiv"<<min;
getch();
return 0;}
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 14:58     с++ задачи на массивы и матрицы #50
Обьясни:
Лабораторная работа №16
Задание: знайти мінімальний елемент матриці. Роботу виконати за допомогою двомірного статичного масиву.
Лабораторная работа №19
Задание: знайти кількість нульових елементів матриці і замінити їх на середнє арифметичне всієї матрицї. Завдання виконати використовуючи динамічний двовимірний масив.
Такие номера лаб и задания к ним или нет?
gusca
5 / 5 / 0
Регистрация: 17.08.2009
Сообщений: 168
18.08.2009, 15:08     с++ задачи на массивы и матрицы #51
Цитата Сообщение от M128K145 Посмотреть сообщение
Обьясни:
Лабораторная работа №16
Задание: знайти мінімальний елемент матриці. Роботу виконати за допомогою двомірного статичного масиву.
Лабораторная работа №19
Задание: знайти кількість нульових елементів матриці і замінити їх на середнє арифметичне всієї матрицї. Завдання виконати використовуючи динамічний двовимірний масив.
Такие номера лаб и задания к ним или нет?
Лабораторная работа №16
Тема: Програмування операцій з двохмірними масивами.

Завдання: Згідно з варіанту індивідуального завдання скласти і виконати програму, задавши значення елементів масиву самостійно. Розв’язати задачу двома способами:
а) задати значення елементів масиву під час об’єднання змінних;
б) значення елементів масиву ввести з клавіатури.

Теоретичні відомості
Багатовимірні масиви задаються вказівкою кожного виміру в квадратних дужках, наприклад, оператор
int matr [6][8];
задає опис двовимірного масиву з 6 рядків і 8 стовпців. У пам’яті такий масив розташовується в послідовних комірках построчно. Багатомірні масиви розміщаються так, що при переході елементу швидше всього змінюється останній індекс. Для доступу до елемента багатомірного масиву указуються всі його індекси, наприклад, matr [i][j].
При ініціалізації багатомірного масиву він представляється або як масив з масивів, при цьому кожен масив заклечається у свої фігурні дужки (у цьому випадку ліву розмірність при описі можна не вказувати), або задається загальний список елементів в тому порядку, у якому елементи розташовуються в пам’яті:
int mass2[][]={{1,1},{0,2},{1,0}};
int mass2[3][2]={1,1,0,2,1,0}
Завдання: У матриці A(mxn) знайти кількість нульових елементів та замінити їх на середнє значення матриці.


ЛАБОРАТОРНА РОБОТА №19
Тема: Програмування операцій динамічні двомірні масиви.
В динамічній області пам’яті можна створювати двомірні масиви за допомогою операції new чи функції malloc. При виділенні пам’яті відразу ж під весь масив кількість рядків (най лівішу розмірність) можна задавати з допомогою змінної чи виразу, а кількість стовбців повинна бути константним виразом, тобто явно визначена до виконання програми. Після слова new записується тип створює мого масиву, а потім – його розмірність в квадратних дужках, наприклад:
int n;
const int m=5;
cin>>n;
int (*a)[m] = new int [n][m]; //1
int **b = (int **) new int [n][m]; //2
В цьому фрагменті показується два способи створення динамічного масиву. В операторі 1 адреса початку виділеної за допомогою new ділянки пам’яті присвоюється змінній a, визначеної як вказівник на масив з m елементів типу int. Саме такий тип значення повертаю в даному випадку операція new. Скобки необхідні, оскільки без них конструкція інтерпретувалася б як масив вказівників. Всього виділяється n елементів. В операторі 2 адреса початку виділеної ділянки пам’яті присвоюється змінній b, яка описана як «вказівник на вказівник на int», тому перед присвоєнням необхідно виконати переведення типу.
По стандарту, в цьому випадку рекомендується застосовувати іншу операцію переведення типу:
int **b = reinterpret_cast <int **> (new int [n][m]);
Звернення до елементів динамічних масивів виконується так само, як і до елементів статичних масивів, за допомогою конструкції виду а[i][j].
Завдання: У матриці A(mxn) знайти кількість нульових елементів та замінити їх на середнє значення матриці.
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 15:11     с++ задачи на массивы и матрицы #52
так вот, я тебе написал решение 19 лабы
gusca
5 / 5 / 0
Регистрация: 17.08.2009
Сообщений: 168
18.08.2009, 15:17     с++ задачи на массивы и матрицы #53
Цитата Сообщение от M128K145 Посмотреть сообщение
так вот, я тебе написал решение 19 лабы
она у меня вибивает 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
#include<iostream.h>
#include<math.h>
#include<conio.h>
int main(){
clrscr();
int n, m, i, j;
cout<<"\n\n\nVvedite razmernost':\nn = ", cin>>n,
cout<<"m = ", cin>>m;
float **matr = new float*[n];
for(i = 0; i < n; ++i)
matr[i] = new float[m];
cout<<"\nVvedite matricy razmernost'y "<<n<<'x'<<m<<":\n";
for (i = 0; i < n; ++i)
for(j = 0; j < m; ++j)
cin>>matr[i][j];
cout<<"\nVvedennaja matrica:\n";
[COLOR="Red"]float mid(0);{ - в етом радку помилка[/COLOR]
for(i = 0; i < n; ++i, cout<<'\n')
for(j = 0; j < m; ++j){
mid += matr[i][j];
cout<<matr[i][j]<<' ';}
mid /= (n * m);
for(i = 0; i < n; ++i)
for(j = 0; j < m; ++j)
if(!matr[i][j]){
count++;
matr[i][j] = mid;}
cout<<"\nRezyl'tat:\n";for(i = 0; i < n; ++i, cout<<'\n')
for(j = 0; j < m; ++j)
cout<<matr[i][j]<<' ';
cout<<"\nKolicgestvo nylei:\n"<<count;
}
getch();
return 0;}

а можеш мне написать 16 лабу плиз
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 15:17     с++ задачи на массивы и матрицы #54
написал бы какие ошибки выдает и учись код выравнивать, он нечитаемым становится
gusca
5 / 5 / 0
Регистрация: 17.08.2009
Сообщений: 168
18.08.2009, 15:23     с++ задачи на массивы и матрицы #55
Цитата Сообщение от M128K145 Посмотреть сообщение
написал бы какие ошибки выдает и учись код выравнивать, он нечитаемым становится
1). parameter names are used only with a function body
2). declaration missing

Добавлено через 46 секунд
M128K145, можеш написать 16 лабу плиз
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 15:28     с++ задачи на массивы и матрицы #56
16 а
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
#include <iostream.h>
int main()
{
    const int n(3), m(3);
    int i, j, count(0);
        float matr[n][m] = {1, 0, 1, 0, 1, 0, 1, 0, 1};
    float mid(0);
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
        {
            mid += matr[i][j];
            cout<<matr[i][j]<<' ';
        }
 
    mid /= (n * m);
    for(i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            if(!matr[i][j])
            {
                count++;
                matr[i][j] = mid;
            }
    cout<<"\nRezyl'tat:\n";
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
            cout<<matr[i][j]<<' ';
 
    cout<<"\nKolicgestvo nylei:\n"<<count;
    cin.get();
    return 0;
}

16 б
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
#include <iostream.h>
int main()
{
    const int n(3), m(3);
    int i, j, count(0);
    float matr[n][m];
 
    cout<<"\nVvedite matricy razmernost'y "<<n<<'x'<<m<<":\n";
    for (i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            cin>>matr[i][j];
    cout<<"\nVvedennaja matrica:\n";
    float mid(0);
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
        {
            mid += matr[i][j];
            cout<<matr[i][j]<<' ';
        }
 
    mid /= (n * m);
    for(i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            if(!matr[i][j])
            {
                count++;
                matr[i][j] = mid;
            }
    cout<<"\nRezyl'tat:\n";
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
            cout<<matr[i][j]<<' ';
 
    cout<<"\nKolicgestvo nylei:\n"<<count;
    cin.get();
    cin.get();
    return 0;
}
gusca
5 / 5 / 0
Регистрация: 17.08.2009
Сообщений: 168
18.08.2009, 15:30     с++ задачи на массивы и матрицы #57
Цитата Сообщение от M128K145 Посмотреть сообщение
16 а
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
#include <iostream.h>
int main()
{
    const int n(3), m(3);
    int i, j, count(0);
        float matr[n][m] = {1, 0, 1, 0, 1, 0, 1, 0, 1};
    float mid(0);
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
        {
            mid += matr[i][j];
            cout<<matr[i][j]<<' ';
        }
 
    mid /= (n * m);
    for(i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            if(!matr[i][j])
            {
                count++;
                matr[i][j] = mid;
            }
    cout<<"\nRezyl'tat:\n";
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
            cout<<matr[i][j]<<' ';
 
    cout<<"\nKolicgestvo nylei:\n"<<count;
    cin.get();
    return 0;
}

16 б
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
#include <iostream.h>
int main()
{
    const int n(3), m(3);
    int i, j, count(0);
    float matr[n][m];
 
    cout<<"\nVvedite matricy razmernost'y "<<n<<'x'<<m<<":\n";
    for (i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            cin>>matr[i][j];
    cout<<"\nVvedennaja matrica:\n";
    float mid(0);
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
        {
            mid += matr[i][j];
            cout<<matr[i][j]<<' ';
        }
 
    mid /= (n * m);
    for(i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            if(!matr[i][j])
            {
                count++;
                matr[i][j] = mid;
            }
    cout<<"\nRezyl'tat:\n";
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
            cout<<matr[i][j]<<' ';
 
    cout<<"\nKolicgestvo nylei:\n"<<count;
    cin.get();
    cin.get();
    return 0;
}
а шо че означае 16 а и 16 б
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 15:35     с++ задачи на массивы и матрицы #58
Цитата Сообщение от gusca Посмотреть сообщение
float mid(0);{ - в етом радку помилка
а вот ты мне скажи, зачем ты туда влепил скобку '{'???
возьми
готовый код
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
#include <iostream.h>
int main()
{
    int n, m, i, j, count(0);
    cout<<"\n\n\nVvedite razmernost':\nn = ", cin>>n,
        cout<<"m = ", cin>>m;
    float **matr = new float*[n];
    for(i = 0; i < n; ++i)
        matr[i] = new float[m];
 
    cout<<"\nVvedite matricy razmernost'y "<<n<<'x'<<m<<":\n";
    for (i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            cin>>matr[i][j];
    cout<<"\nVvedennaja matrica:\n";
    float mid(0);
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
        {
            mid += matr[i][j];
            cout<<matr[i][j]<<' ';
        }
 
    mid /= (n * m);
    for(i = 0; i < n; ++i)
        for(j = 0; j < m; ++j)
            if(!matr[i][j])
            {
                count++;
                matr[i][j] = mid;
            }
    cout<<"\nRezyl'tat:\n";
    for(i = 0; i < n; ++i, cout<<'\n')
        for(j = 0; j < m; ++j)
            cout<<matr[i][j]<<' ';
 
    cout<<"\nKolicgestvo nylei:\n"<<count;
    for(i = 0; i < n; ++i)
        delete [] matr[i];
    delete [] matr;
    cin.get();
    cin.get();
    return 0;
}
и ничего не меняй в нем

Добавлено через 34 секунды
Цитата Сообщение от gusca Посмотреть сообщение
Завдання: Згідно з варіанту індивідуального завдання скласти і виконати програму, задавши значення елементів масиву самостійно. Розв’язати задачу двома способами:
а) задати значення елементів масиву під час об’єднання змінних;
б) значення елементів масиву ввести з клавіатури.
вот что значит
gusca
5 / 5 / 0
Регистрация: 17.08.2009
Сообщений: 168
18.08.2009, 15:52     с++ задачи на массивы и матрицы #59
M128K145, помоги написать код програми к 20 лабе
Тема: Програмування операцій з масивом структур.
Теоретичні відомості:
1. Структури застосовуються для логічного об'єднання пов'язаних між собою даних різних типів.
2. Після опису структурного типу ставиться крапка з комою.
3. Елементи структури називаються полями. Поля можуть бути будь якого основного типу, масивом, вказівником, об'єднанням або структурою.
4. Для звернення до поля використовується операція вибору: "точка" при зверненні через ім'я структури та "->" при зверненні через вказівник.
5. Структури одного типу можна присвоювати одну одній.
6. Введення, виведення структур виконується поелементно.
7. Структури, пам'ять під які виділяє компілятор, можна ініціалізувати перелічуванням значень їх елементів.

Індивідуальні завдання
Згідно до варіанту індивідуального завдання скласти і виконати про-граму.
Описати структуру даних STUDENT яка містить таку інформацію: прізвище студента, група, рік народження, результати складання 5 іспитів. Скласти програму для створення масиву з 5 елементів цієї структури і опрацювання відповідних даних (пошук деякої інформації).

завдання: вивести результат сесии самого невстигаючого студента
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.08.2009, 16:02     с++ задачи на массивы и матрицы
Еще ссылки по теме:
C++ Задачи на массивы
с++ задачи на массивы и мартицы C++
C++ задачи на текст и массивы

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

Или воспользуйтесь поиском по форуму:
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
18.08.2009, 16:02     с++ задачи на массивы и матрицы #60
пост № 41
Yandex
Объявления
18.08.2009, 16:02     с++ задачи на массивы и матрицы
Закрытая тема Создать тему
Опции темы

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