Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
555shiro
8 / 8 / 1
Регистрация: 01.12.2009
Сообщений: 227
#1

Вывести чётные и нечётные элементы - C++

18.02.2010, 21:01. Просмотров 1377. Ответов 6
Метки нет (Все метки)

ЗДАСТВУЙТЕ !
не могу понять в чём ошибка,вроде всё правильно...
"в матрице а[4][4] четные элементы разделить на 4,а к нечетным прибавить 10.Вывести полученную матрицу"
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
#include<iostream.h>
#include <string.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
void main ()
{
int i,j;
int a[4][4];
   printf("vvedite elevent:\n");
    for(i=0;i<4;i++)
    for(j=0;j<4;j++)
 scanf("%d",&a[i][j]);
    for(i=0;i<4;i++)
    for(j=0;j<4;j++)
 if(a[i]%2==0)
{
a[i]=i/4;
 }
if(a[i]%2!==0)
    {
    a[i]=i+10;
    }
printf("%d\n",&a[i][j]);
getch ();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2010, 21:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывести чётные и нечётные элементы (C++):

Вывести нечётные по значению элементы массива по возрастанию, а чётные - по убыванию - C++
Создал программку вот такую: #include &lt;iostream&gt; #include&lt;iomanip&gt; #include &lt;time.h&gt; using namespace std; void main() { ...

Отсортировать по возрастанию и вывести на экран сперва чётные элементы вектора, а затем нечётные - C++
Привет. Вообщем, стоит такая задача: &quot;Вывести на экран сначала отсортированные по возрастанию элементы массива Y(25) стоящие на чётных...

Отсортировать чётные элементы по возрастанию, а нечётные по убыванию - C++
Вот условие(могу кое где ошибаться в правильности постановки задачи) Составить одномерный массив, в котором бы выводилось 20(или более)...

Закрасить нечётные отрицательные и чётные положительные элементы массива - C++
Помогите, пожалуйста. Целочисленный массив создается с N случайных элементов. Нужно закрасить нечётные отрицательные и чётные...

Упорядочить нечётные элементы по убыванию, а чётные оставить на прежних местах - C++
Здравствуйте , помогите решить задачу: Дан одномерный массив размером М. Упорядочить нечётные элементы по убыванию, а чётные оставить на...

Отсортировать массив, поставив сначала чётные элементы, а потом нечётные - C++
Люди добрые помогите пожалуйста! мне нужно заполнить двумерный массив А случайными целыми числами от –1000 до +1000 и отсортировать...

6
fasked
Эксперт С++
4948 / 2528 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
18.02.2010, 21:15 #2
Код
a[i]=i/4;
заменить на
Код
a[i] /= 4
Код
a[i]=i+10;
заменить на
Код
a[i] += 10
Код
printf("%d\n",&a[i][j]);
этого я боюсь %)
0
лендер
46 / 46 / 2
Регистрация: 12.01.2010
Сообщений: 183
18.02.2010, 21:19 #3
а- двухмерный масив соответственно надо обращятся к елементам етого масива нада a[i][j] а не как к одномерному

C++
1
if(a[i]%2!==0)
!== -такой операции в си нет есть !=


да и вывод двохмерного масива:
C
1
2
3
 for(i=0;i<4;i++)
    for(j=0;j<4;j++)
printf("%d\n",&a[i][j]);
выводи каждый елемент масива по очереди
0
fasked
Эксперт С++
4948 / 2528 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
18.02.2010, 21:26 #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
void print_m(int *m, int row, int col)
{
    for(int i = 0; i < row; i++)
    {
        for(int j = 0; j < col; j++)
            cout << *m++ << " ";
        cout << endl;
    }
}
int main()
{
    const int S = 3, V = 3;
    int M[S][V];
    
    for(int i = 0; i < S; i++)
        for(int j = 0; j < V; j++)
            M[i][j] = rand()%9 + 1;
            
    puts("Исходная матрица");
    print_m((int*)M,S,V);
    
    for(int i = 0; i < S; i++)
        for(int j = 0; j < V; j++)
            if(M[i][j]%2 == 0)
                M[i][j] /= 4;
            else
                M[i][j] += 10;
    
    puts("Конечная матрица");
    print_m((int*)M,S,V);
    
    cout << endl;
    system("pause");
}
1
555shiro
8 / 8 / 1
Регистрация: 01.12.2009
Сообщений: 227
18.02.2010, 21:34  [ТС] #5
щас программа работает,но выходит вообще не то(
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
#include<iostream.h>
#include <string.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
void main ()
{
int i,j;
int a[4][4];
   printf("vvedite elevent:\n");
    for(i=0;i<4;i++)
    for(j=0;j<4;j++)
 scanf("%d",&a[i][j]);
    for(i=0;i<4;i++)
    for(j=0;j<4;j++)
 if ( a[i][j]%2==0 )
{
a[i][j]=a[i][j]/4;
 }
if ( a[i][j]%2!=0 )
    {
    a[i][j]=+10;
    }
printf("%d",&a[i][j]);
getch ();
}
вот что выходит после компиляции:
124520

Добавлено через 5 минут
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
void print_m(int *m, int row, int col)
{
        for(int i = 0; i < row; i++)
        {
                for(int j = 0; j < col; j++)
                        cout << *m++ << " ";
                cout << endl;
        }
}
int main()
{
        const int S = 3, V = 3;
        int M[S][V];
 
        for(int i = 0; i < S; i++)
                for(int j = 0; j < V; j++)
                        M[i][j] = rand()%9 + 1;  // мне не понятен,а здесь массиву что присаивается?
 
        puts("ÈñõîäГ*Г*Гї Г¬Г*òðèöГ*");
        print_m((int*)M,S,V);
 
        for(int i = 0; i < S; i++)
                for(int j = 0; j < V; j++)
                        if(M[i][j]%2 == 0)
                                M[i][j] /= 4;
                        else
                                M[i][j] += 10;
 
        puts("ГЉГ®Г*ГҐГ·Г*Г*Гї Г¬Г*òðèöГ*");
        print_m((int*)M,S,V);
 
        cout << endl;
        system("pause");
}
0
fasked
Эксперт С++
4948 / 2528 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
18.02.2010, 21:36 #6
C++
1
2
3
   for(int i = 0; i < S; i++)
                for(int j = 0; j < V; j++)
                        M[i][j] = rand()%9 + 1;
Эта часть кода заполняет массив "случайными" значениями от 1 до 9.
1
лендер
46 / 46 / 2
Регистрация: 12.01.2010
Сообщений: 183
18.02.2010, 21:37 #7
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
#include <stdio.h>
void main ()
{
int i,j;
int a[4][4];
   printf("vvedite elevent:\n");
    for(i=0;i<4;i++)
    for(j=0;j<4;j++)
 scanf("%d",&a[i][j]);
    for(i=0;i<4;i++)
    for(j=0;j<4;j++)
    {
  if ( a[i][j]%2==0 )
    a[i][j]=a[i][j]/4;
 
  if ( a[i][j]%2!=0 )
    a[i][j]+=10;
     }
 
 
    for(i=0;i<4;i++)
    {
     printf("\n");
      for(j=0;j<4;j++)
    printf("%d ", a[i][j]);
    }
getch ();
}
1
18.02.2010, 21:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2010, 21:37
Привет! Вот еще темы с ответами:

Создать два массива: в одном хранятся чётные элементы исходного, в другом – нечётные - C++
3. Написать программу, которая из случайно заполненного массива из 50 элементов создаёт два массива: в одном массиве хранятся чётные...

Скопировать чётные элементы из массива X в массив Y, а нечётные элементы в массив Z - C++
Ребята помогите пожалуиста скопировать четные елементы из масива X в масив Y и нечетные елементы в масив Z. Я использою Дев С++. ...

Из заданного массива C записать в массив А чётные положительные элементы, а в массив В нечётные отрицательные - C++
Здравствуйте всем, помогите пожалуйста решить задачи по С++, контрольная горит, буду очень благодарен) 1) Дан массив С(10)....

Создать файл с квадратной матрицей; чётные элементы переместить в один файл, нечётные - в другой - C++
• Создать файл с массивом А. • Четные элементы переместить в файл А • Нечетные элементы переместить в файл В Не могу понять Как...


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

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

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