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

Найти номера первого и последнего нулевых элементов массива

11.12.2010, 17:18. Просмотров 429. Ответов 3
Метки нет (Все метки)

Помогите решить задачи:
1) В массиве T(k) найти номера первого и последнего нулевых элементов.
2) Дан двумерный массив размерностью 5 на 6 заполненный целыми числами. Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующего столбца.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2010, 17:18
Ответы с готовыми решениями:

Найти номера первого минимального и последнего максимального элементов массива
Дано целое число n и набор из n целых чисел. Найти номера первого минимального и последнего...

Найти номера первого и последнего минимальных элементов из заданного набора
MiNmax8. Дано целое число N и набор из N целых чисел. Найти номера первой и последнего минимального...

Найти и вывести на экран номера первого и последнего минимального элемента одномерного массива
Дан одномерный массив А. Найти номера первого и последнего минимального элемента из данного...

Найти сумму первого,последнего и центрального элементов массива из 20 элементов.
Дан массив из 20 чисел мо знаком. Найти сумму первого,последнего и центрального элементов массива....

Найти сумму элементов массива от первого до последнего нулевого
Собственно, проблема с тем, как определить этот самый последний элемент и запомнить его. Вот что...

3
go
Эксперт С++
3637 / 1369 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
11.12.2010, 17:58 2
Цитата Сообщение от Vova701 Посмотреть сообщение
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
#include <stdio.h>
int const n=3;
int const m=5;
 
 
int _tmain(int argc, _TCHAR* argv[])
{    int mt[n][m]={{0,0,0, 0,7},
                   {0,2,-1,0,7},
                   {3,0,0, 0,10}};
  int i,max,mas[m],j=m;
 
  while (j--)
  { max=mt[0][j];
    for (i=0;i<n;i++)
        if (max<mt[i][j])
            max=mt[i][j];
    mas[j]=max;
  }
 
 for (i=0;i<m;i++)
     printf ("%5d", mas[i]);
 
 
 
 
    return 0;
}
размерность установишь нужную тебе

Добавлено через 13 минут
Цитата Сообщение от Vova701 Посмотреть сообщение
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
#include <stdio.h>
 
int const m=5;
 
void fun (int *mas,int k)
{ int i=0;
 
  while (i<k)
   if (*(mas+i++)==0)
   break;
 
  while (--k)
   if (*(mas+k)==0)
   break;
 
printf ("Nomer repvogo - %d\nNomer poslednego - %d", --i, k);
 
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{    int mt[m]={0,8,8, 5,7};
fun (mt,5);
 
 
    return 0;
}

вот тебе функция, думаю разберешься
0
asics
Freelance
Эксперт С++
2857 / 1792 / 355
Регистрация: 09.09.2010
Сообщений: 3,841
11.12.2010, 18:28 3
Цитата Сообщение от Vova701 Посмотреть сообщение
2) Дан двумерный массив размерностью 5 на 6 заполненный целыми числами. Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующего столбца.
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
 
#define LINE 5
#define COLUMNS 6
 
void enter_matr(int m[][COLUMNS])
{
    srand(time(NULL));
    int i, j;
 
    for(i = 0; i < LINE; ++i)
    {
        for(j = 0; j < COLUMNS; ++j)
        {
            m[i][j] = rand() % 10-5;
            printf("     %d    ", m[i][j]);
        }
        printf("\n");
    }
}
 
int main(void)
{
    int matr[LINE][COLUMNS], m[COLUMNS], max, i, j;
 
    enter_matr(matr);
    for(i = 0; i < COLUMNS; ++i)
    {
        max = matr[0][i];
        for(j = 0; j < LINE; ++j)
        {
            if(abs(matr[j][i]) > abs(max))
            {
                max = matr[j][i];
            }
        }
        m[i] = max;
    }
 
    printf("\nArray: ");
    for(i = 0; i < COLUMNS; ++i)
        printf("%d ", m[i]);
 
    return 0;
}
0
go
Эксперт С++
3637 / 1369 / 243
Регистрация: 16.04.2009
Сообщений: 4,527
11.12.2010, 19:03 4
Цитата Сообщение от Vova701 Посмотреть сообщение
2) Дан двумерный массив размерностью 5 на 6 заполненный целыми числами. Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующего столбца.
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>
#include <math.h>
int const n=3;
int const m=5;
 
 
int _tmain(int argc, _TCHAR* argv[])
{    int mt[n][m]={{0,0,0, 0,7},
                   {0,2,-1,0,7},
                   {3,0,0, 0,10}};
  int i,max,mas[m],j=m;
 
  while (j--)
  { max=mt[0][j];
    for (i=0;i<n;i++)
                if (abc(max)<abc (mt[i][j]))
                        max=mt[i][j];
        mas[j]=max;
  }
 
 for (i=0;i<m;i++)
         printf ("%5d", mas[i]);
 
 
 
 
        return 0;
}
не заметил что по модулю
исправил
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.12.2010, 19:03

Найти построчно сумму первого и последнего элементов двумерного массива
Задан двумерный массив А(6)(6) целых чисел. Ввести массив в теле программы с помощью счетчика...

Найти номера первого и последнего максимального элемента
Данное целое число N и набор из N целых чисел. Найти номера первой и последней максимального...

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


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

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

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