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

Организовать новый массив в соответствии с заданным условием

21.05.2017, 17:52. Просмотров 238. Ответов 9
Метки нет (Все метки)

Дан одномерный целочисленный массив B. Организовать новый массив A=B, если B>0, иначе при B<=0, A=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
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
75
76
77
#include <iostream>
#include <conio.h>
#include <math.h>
#include <ctime>
#include <fstream>
using namespace std;
void MassivB(int n, double *B)
{
    for (int i=0; i<n; i++)
    {
        B[i] = 50-rand() % 100;
        cout << "B["<<i<<"]=" << B[i] << endl;
    }
}
void MassivA(int n, double *A, double *B)
{
    for (int i=0; i<n; i++)
    {
        if (B<=0)
        {
        A=0;
        cout << "A["<<i<<"]=" << A[i] << endl;
        }
        else
        {
            A=B;
            cout << "A["<<i<<"]=" << A[i] << endl;
        }
    }
}
 
void sort(double A, int n)
{
    int last=n; bool ok;
    do
    {
        last=last-1;
        ok=true;
        for(int i=0; i<last; i++)
        {
            if(A[i]>A[i+1])
            {
                int x=A[i];
                A[i]=A[i+1];
                A[i+1]=x;
                ok=false;
            }
        }
    }
    while(!ok);
}
void Excel(int n, double *B, double *A)
{
    ofstream f("Massiv.csv");
    for (int i=0; i<n; i++)
        {
            f << "B["<<i<<"]=" << B[i] << endl;
            f << "A["<<i<<"]=" << A[i] << endl;
            f.close();
        }
}
int main()
{
setlocale(0, "");
double n,*B,*A;
cout << "Введите размерность массива:" << endl;
cin >> n;
B = new double[n];
MassivB(n, B);
A = new double[n];
MassivA(n, A, B);
Excel(n, B, A);
delete B;
delete A;
getch();
return 0;
}
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.05.2017, 17:52
Ответы с готовыми решениями:

Сформировать новый массив в соответствии с условием
Сформировать случайным образом массив из 20 элементов. Сформировать новый массив так, чтобы каждый...

Заполнить двумерный массив в соответствии с заданным правилом
Всем привет! Решаю вот такое вот задание: На грядках посажена капуста и морковь. Грядки...

Выборка и копирование элементов массива в новый массив с условием
&quot;В одномерном массиве, состоящем из n вещественных элементов, вычислить произведение элементов...

Организовать новый массив из нечетных элементов исходного
Дан одномерный массив B из 20 элементов. Организовать новый массив: ai=bi , если i - нечетное ...

Организовать новый массив по условию, отсортировать методом обменов
Дан одномерный целочисленный массив B. Организовать новый массив A=B, если B&gt;0, иначе при B&lt;=0, A=0...

9
Nik Golor
3 / 3 / 0
Регистрация: 07.01.2017
Сообщений: 101
21.05.2017, 21:53 2
Было бы не плохо скрин хотя бы, про ошибку.
0
UniqueMio
0 / 0 / 0
Регистрация: 12.03.2017
Сообщений: 15
21.05.2017, 22:03  [ТС] 3
Дело в то, что, во первых, не выполняется условие массива А и он тупо копирует массив Б, если делать без сортировки. С сортировкой просто не запускается программа.
0
nd2
3058 / 2563 / 1122
Регистрация: 29.01.2016
Сообщений: 8,626
21.05.2017, 22:12 4
Цитата Сообщение от UniqueMio Посмотреть сообщение
если B>0
Это как понимать?
0
21.05.2017, 22:12
UniqueMio
0 / 0 / 0
Регистрация: 12.03.2017
Сообщений: 15
21.05.2017, 22:14  [ТС] 5
если массив B больше нуля, то A=B. Иначе A=0
0
nd2
3058 / 2563 / 1122
Регистрация: 29.01.2016
Сообщений: 8,626
21.05.2017, 22:21 6
Цитата Сообщение от UniqueMio Посмотреть сообщение
если массив B больше нуля
Что это значит: массив больше нуля?
0
UniqueMio
0 / 0 / 0
Регистрация: 12.03.2017
Сообщений: 15
21.05.2017, 22:23  [ТС] 7
B[i]>0 уже не знаю как объяснить((
0
nd2
3058 / 2563 / 1122
Регистрация: 29.01.2016
Сообщений: 8,626
21.05.2017, 22:25 8
Цитата Сообщение от UniqueMio Посмотреть сообщение
B[i]>0 уже не знаю как объяснить((
Вот так и объяснить. А теперь смотри на свой код и думай.
Цитата Сообщение от UniqueMio Посмотреть сообщение
C++
1
2
if (B<=0) 
{ A=0;
1
UniqueMio
0 / 0 / 0
Регистрация: 12.03.2017
Сообщений: 15
21.05.2017, 22:29  [ТС] 9
Cпасибо)) Можете помочь с сортировкой, пожалуйста?
0
nd2
3058 / 2563 / 1122
Регистрация: 29.01.2016
Сообщений: 8,626
21.05.2017, 23:04 10
Алгоритмы сортировок
0
21.05.2017, 23:04
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.05.2017, 23:04

Получить новый массив из старого удалив элементы с заданным значением
Вот задача: Программа получения нового массива из старого массива удалением каждый раз числа 5 из...

Упорядочить карточки в соответствии с условием
Дублирую тему с Python канала о задаче про карточки. К сожалению, в Python разделе никто не...

Упорядочить квадратную матрицу в соответствии с условием
Добрый день. дана входная строка из нескольких цифр: 1 2 3 4 Необходимо отсортировать новую...


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

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

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