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

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

Войти
Регистрация
Восстановить пароль
 
O.K.
0 / 0 / 0
Регистрация: 07.04.2012
Сообщений: 3
#1

Не првильно записываются числа с одного масива в другой - C++

07.04.2012, 17:28. Просмотров 270. Ответов 2
Метки нет (Все метки)

Условие такое: дан массив W[20]. Записать числа из массива W в новый массив B следующим образом:
1. Четные числа
2. нечетные числа больше ноля
3. нечетные числа меньше ноля
Я написал код, но правильно записывае только первые два пункта. Подскажите в чем ошибка?
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
#include<stdio.h>
#include<conio.h>
 
void main()
{
int W[20]={23,-8,-9,-52,-63,-36,63,56,89,63,24,26,25,52,21,89,96,-65,8,-3};
int B[20];
int i, k1=0, k2=19;
 
clrscr();
 
    for (i=0; i<20; i++)
    {
        printf("%d ", W[i]);
        if (W[i]%2==0)
        {
        B[k1]=W[i];
         k1++;
        }
    }
 
      for (i=0; i<20; i++)
    {
        if ((W[i]%2==1) && (W[i]>0))
          {B[k1-1]=W[i]; k1++;}
        else if ((W[i]%2==1) && (W[i]<0)) {B[k2]=W[i]; k2--;}
    }
 
printf("\n");
for (k1=0; k1<20; k1++)
    {
    printf("%d ", B[k1]);
    }
 
getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2012, 17:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не првильно записываются числа с одного масива в другой (C++):

Числа из одного файла переписать в другой - C++
Прошу написать прогу, чтобы читала из одного txt файла число и писала его в другой. Желательно стандартными функциями С++. Я сам пытался,...

Преобразовать числа из одного диапазона в другой - C++
Нужна функция перевода числа a из -N - N границы в число b из границы 0-6. Например число 50 из границы 0-100 перевести в число x из...

Переписать уникальные числа одного массива в другой - C++
Дан массив С ( двухмерный массив ) с размером, который задаёт пользователь. Написать программу которая в новый массив А записывает те...

Перевести числа из одного массива в другой (кроме первого максимального и последнего минимального) - C++
НУ ЗАДАЧА В ТОМ ЧТОБ ПЕРЕМЕСТИТЬ ВСЕ ЦИФРЫ a МАССИВА В b КРОМЕ ПЕРВОГО МАКСИМАЛЬНОГО И ПОСЛЕДНЕГО МИНИМАЛЬНОГО ЭЛЕМЕНТА&gt;Я НАПИСАЛ ТАКОЙ КОД...

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

В строке последовательно записываются числа от 1 до k, потом числа повторяются, пока строка не заполнится - C++
Всем привет, помогите с решением этой задачи: Создать динамический двумерный массив размера mxn, заполнить его по следующему правилу:...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Mogost
7 / 7 / 1
Регистрация: 07.04.2012
Сообщений: 51
07.04.2012, 18:22 #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
35
36
37
38
39
40
41
42
43
44
#include<stdio.h>
#include<conio.h>
 
void main()
{
int W[20]={23,-8,-9,-52,-63,-36,63,56,89,63,24,26,25,52,21,89,96,-65,8,-3};
int B[20];
int i, k=0;
clrscr();
for (i=0; i<20; i++)
{
printf("%d ", W[i]);
}
for (i=0; i<20; i++)
{
    if (W[i]%2==0&&W[i]!=NULL)
    {
    B[k]=W[i]; W[i]=NULL; k++;
    }
}
 
for (i=0; i<20; i++)
{
    if (W[i]%2!=0&&W[i]!=NULL&&W[i]>=0)
    {
    B[k]=W[i]; W[i]=NULL; k++;
    }
} 
 
for (i=0; i<20; i++)
{
    if (W[i]%2!=0&&W[i]!=NULL&&W[i]<0)
    {
    B[k]=W[i]; W[i]=NULL; k++;
    }
}  
 
printf("\n");
for (i=0; i<20; i++)
    {
    printf("%d ", B[i]);
    }
getch();
}
Наверное так.
O.K.
0 / 0 / 0
Регистрация: 07.04.2012
Сообщений: 3
07.04.2012, 18:31  [ТС] #3
Mogost, огромное спасибо!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2012, 18:31
Привет! Вот еще темы с ответами:

В выходной фаил записываются вместе с ответом записываются каракули. Помогите исправить ошибку - C++
#include &lt;iostream&gt; using namespace std; void funk (int n, int k) { freopen(&quot;input.txt&quot;, &quot;rt&quot;, stdin); ...

Не записываются числа - C++
Написал программу, которая с помощью цикла записывает в файл числа от нуля до 423. Но почему то компилятор выдает ошибку если я записываю...

Некорректно записываются числа в файл - C++
Всем привет и с наступающими праздниками. Имеется задание: надо записать в файл строки и числа, введенные с клавиатуры. Должно быть...

Работа с динамической структурой: Числа записываются в обратном порядке - C++
ПРоблема в следующем я отбираю нужные мне числа и записываю их, но, к сожалению, эти числа записываюются в обратном порядке. И при выводе...


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

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

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