Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.58/71: Рейтинг темы: голосов - 71, средняя оценка - 4.58
2 / 2 / 0
Регистрация: 13.05.2009
Сообщений: 16
1

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

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

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

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

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

самое беспонтовое что я в массива ничего не понямаю(((:'(
кто чем может помогиитее!!!
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.05.2009, 09:10
Ответы с готовыми решениями:

Задачи на массивы
Помогите написать программы на С++ пожалуйста.

Массивы(задачи)
Начал изучать язык Си.Не могу решить задачи.Прошу помощи в решении: 1.Дано 2(два) массива из цифр:...

Задачи на массивы в С++
Здравствуйте, помогите пожалуйста с решением 2 задач: 1. Даны целые числа a1, ..., a30. Все...

Задачи на массивы
Здравствуйте, многоуважаемые пользователи! Прошу Вас помощи в начинающих заданиях. Не знаю сюда ли...

74
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
17.08.2009, 23:18 41
Author24 — интернет-сервис помощи студентам
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;
}
1
43 / 39 / 12
Регистрация: 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;
}
1
209 / 16 / 4
Регистрация: 18.08.2009
Сообщений: 571
18.08.2009, 10:20 43
Прива всем, помогите написать код програмы на тему "Програмирование операций з масивом структур".!

Задача:
Вивести перелік студентів, які не склали другий та третій іспит.
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
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;
}
1
5 / 5 / 1
Регистрация: 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) знайти кількість нульових елементів та замінити їх на середнє значення матриці.
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
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;
}
1
5 / 5 / 1
Регистрация: 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]);
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
18.08.2009, 14:40 48
Эт не код, эт что попало. Задание на подсчет нулей в матрице и замене их средним значением, а у тебя поиск минимального значения матрицы, да еще и индексы тянеш за собой зачем-то. Зачем тебе math спрашвается здесь нужен? я так понял надо сделать с диамическими массивами, а у тебя они статические
1
5 / 5 / 1
Регистрация: 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;}
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
18.08.2009, 14:58 50
Обьясни:
Лабораторная работа №16
Задание: знайти мінімальний елемент матриці. Роботу виконати за допомогою двомірного статичного масиву.
Лабораторная работа №19
Задание: знайти кількість нульових елементів матриці і замінити їх на середнє арифметичне всієї матрицї. Завдання виконати використовуючи динамічний двовимірний масив.
Такие номера лаб и задания к ним или нет?
0
5 / 5 / 1
Регистрация: 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) знайти кількість нульових елементів та замінити їх на середнє значення матриці.
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
18.08.2009, 15:11 52
так вот, я тебе написал решение 19 лабы
1
5 / 5 / 1
Регистрация: 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 лабу плиз
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
18.08.2009, 15:17 54
написал бы какие ошибки выдает и учись код выравнивать, он нечитаемым становится
0
5 / 5 / 1
Регистрация: 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 лабу плиз
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
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;
}
0
5 / 5 / 1
Регистрация: 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 б
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
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 Посмотреть сообщение
Завдання: Згідно з варіанту індивідуального завдання скласти і виконати програму, задавши значення елементів масиву самостійно. Розв’язати задачу двома способами:
а) задати значення елементів масиву під час об’єднання змінних;
б) значення елементів масиву ввести з клавіатури.
вот что значит
1
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
18.08.2009, 15:52 59
M128K145, помоги написать код програми к 20 лабе
Тема: Програмування операцій з масивом структур.
Теоретичні відомості:
1. Структури застосовуються для логічного об'єднання пов'язаних між собою даних різних типів.
2. Після опису структурного типу ставиться крапка з комою.
3. Елементи структури називаються полями. Поля можуть бути будь якого основного типу, масивом, вказівником, об'єднанням або структурою.
4. Для звернення до поля використовується операція вибору: "точка" при зверненні через ім'я структури та "->" при зверненні через вказівник.
5. Структури одного типу можна присвоювати одну одній.
6. Введення, виведення структур виконується поелементно.
7. Структури, пам'ять під які виділяє компілятор, можна ініціалізувати перелічуванням значень їх елементів.

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

завдання: вивести результат сесии самого невстигаючого студента
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
18.08.2009, 16:02 60
пост № 41
1
18.08.2009, 16:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.08.2009, 16:02
Помогаю со студенческими работами здесь

Массивы - задачи
http://www.ii4.ru/images/7078611.JPG http://www.ii4.ru/images/1839532.JPG задачи на C++ срочно...

задачи на C++, на массивы
дана такая задача: дан линейный массив А, состояий из N элементов. Составить прорграмму удаления...

Задачи на массивы С++
1)решить двумя способоми, сначала используя одномерный массив а потом двумерный.( и только с...

Задачи на массивы
1.дан массив А(11).все элементы этого массива из интервала (с,d) обнулите,найдите сумму остальных....


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

Или воспользуйтесь поиском по форуму:
60
Закрытая тема Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru