Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
миклух
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 13
1

Сформировать одномерный массив Х из элементов матрицы А...

27.10.2011, 02:38. Просмотров 958. Ответов 4
Метки нет (Все метки)

помогите пожалуйста! никак не получается сделать основную задачу. остановился на этом варианте, но все равно не получается - записываю матрицу в массив(все нормально), пытаюсь записать элементы для которых ближайшим целым является 1 из него в другой массив, а на вывод выдает чушь какую-то!

Сформировать одномерный массив Х из элементов матрицы А, для которых ближайшим целым является 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
29
30
31
32
33
34
35
36
int main()
{
    int w, y;
    int x=25;
    float b[25], c[x];
    float my[5][5]={-3.8,      0,     5.3,    4.5,     0.5,    
 
                     0.2,   -1.3,    0,     -8.5,     3.5,   
 
                     -1.1,     1.8,   5.1,   -8.2,     0.32, 
 
                        0,     -0.3,    0,     -1.28,   0.52, 
 
                        -0.3,     0.5,   1.8,   -7.3,     5.5}; 
 
    
     
    for(int i = 0; i < 5; i++){
    for(int j = 0; j < 5; j++){
    
                  b[i*5+j]=my[i][j];
                  
                  }
                  }
    for(w=0;w<25;w++){
    if((b[w] >= 0.5) && ((b[w] <= 1.5))) ++w;
     c[y]=b[w];
     }
                  
                  
             for(y=0;y<25;y++){
        cout<<" "<< c[y];
}
    getch();
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2011, 02:38
Ответы с готовыми решениями:

Сформировать одномерный массив из диагональных элементов матрицы. Найти след матрицы
Для заданной квадратной матрицы сформировать одномерный массив из ее диагональных элементов. Найти...

Сформировать одномерный массив из элементов матрицы
Есть двумерный массив, 5*6 Сформировать одномерный массив, каждый элемент которого равен...

Сформировать одномерный массив из элементов матрицы
Дан двумерный массив размерностью 5 х 6, заполненный целыми числами с клавиатуры. Сформировать...

Сформировать одномерный массив из элементов матрицы
помогите решить задачу,пожалуйста: Дан двумерный массив размерностью 4*6, заполненный целыми...

Сформировать одномерный массив из диагональных элементов матрицы
Ребята,любой пример объясните хочу понять массивы и подпрограммы ,или если есть готовые примеры...

4
greeezz
275 / 168 / 21
Регистрация: 10.07.2011
Сообщений: 441
27.10.2011, 03:02 2
А для чего вы матрицу my[5][5] сначала пытаетесь переписать в вектор b, а потом отдельно обрабатываете вектор b в поисках нужных вам элементов. думаю это можно делать в процессе одной обработки.
Скажите пожалуйста что такое элемент для которого ближайшим целым является единица. судя по вашему коду это то что больше или равно 0.5 и меньше или равно 1.5 . почему например 0.2 не подходит.
0
миклух
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 13
27.10.2011, 03:11  [ТС] 3
Цитата Сообщение от greeezz Посмотреть сообщение
А для чего вы матрицу my[5][5] сначала пытаетесь переписать в вектор b, а потом отдельно обрабатываете вектор b в поисках нужных вам элементов. думаю это можно делать в процессе одной обработки.
Скажите пожалуйста что такое элемент для которого ближайшим целым является единица. судя по вашему коду это то что больше или равно 0.5 и меньше или равно 1.5 . почему например 0.2 не подходит.
1.От бессилия уже.
2.ну округляем же! например 1,6 уже к 2 округляем, в то время, как от 1.1 до 1.5 можно к 1 округлить - значит ближайшее 1. гм, тогда вместо 0.5 будет 0
0
greeezz
275 / 168 / 21
Регистрация: 10.07.2011
Сообщений: 441
27.10.2011, 03:25 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
28
29
30
31
32
33
34
35
36
37
38
39
#include "stdafx.h"
#include <iostream>
 
using std::cin;
using std::cout;
using std::endl;
 
int main()
{
    const int size = 25;
    int iter = 0;
    float b[size];
    float my[5][5]={-3.8,      0,     5.3,    4.5,     0.5,    
 
        0.2,   -1.3,    0,     -8.5,     3.5,   
 
        -1.1,     1.8,   5.1,   -8.2,     0.32, 
 
        0,     -0.3,    0,     -1.28,   0.52, 
 
        -0.3,     0.5,   1.8,   -7.3,     5.5}; 
 
 
    for(int i = 0; i<5; ++i){
        for(int j = 0; j<5; ++j){
            if(my[i][j]>=0.5 && my[i][j]<1.5){
                b[iter] = my[i][j];
                iter++;
            }
        }
    }
 
    for(int k = 0; k < iter; ++k){
        cout << b[k] << " ";
    }
    cout << endl;
    system("pause");
    return 0;
}
тут не учитываются отрицательные числа. т.е. числа округляемые до -1.

p.s. не сложно доработать чтобы найти минимальный элемент массива.
1
миклух
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 13
27.10.2011, 03:37  [ТС] 5
Цитата Сообщение от greeezz Посмотреть сообщение
ок. понял. надо было убедиться что я верно понимаю формулировку.

тут не учитываются отрицательные числа. т.е. числа округляемые до -1.

p.s. не сложно доработать чтобы найти минимальный элемент массива.
спасибо огромное!! понял свою ошибку!
0
27.10.2011, 03:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.10.2011, 03:37

Сформировать одномерный массив из элементов матрицы по условию
помогите плз, решить задачу в программировании ноль Дана матрица K(m,n).Сформировать одномерный...

Сформировать одномерный массив как сумму элементов матрицы
Сформировать одномерный массив как сумму элементов матрицы Размерность массива 4х5 #include...

Сформировать одномерный массив X из максимальных элементов столбцов матрицы A
Сформировать одномерный массив X из максимальных элементов столбцов матрицы A. В массиве X поменять...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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