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

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

Войти
Регистрация
Восстановить пароль
 
 
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
#1

Одномерный массив - C++

18.02.2011, 13:16. Просмотров 718. Ответов 18
Метки нет (Все метки)

Ребят помогите плиз решить одномерный и двумернй массив..на языке Си(не СИ++)
1.В целочисленном массиве после каждых 3-х отрицательных чисел идущих подряд вставить 0.
2.Сформировать матрицу размером М вида:
|M M-1...........2 |
|1 M...............3 |
|2 1 M............4 |
|3 2 1 ............5 |
|4 3 2.............. |
|.......................|
|M M-1 M-2......1 |
Буду очень благодарен..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2011, 13:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Одномерный массив (C++):

Матрица и одномерный массив (Составить одномерный массив, содержащий количество буквенных символов в каждом из ее столбцов, подсчет символов) - C++
Помогите решить задачку: Дана матрица 5х7, элементами которой являются значения символьного типа. Составить одномерный массив, содержащий...

Массив: Все элементы массива, кратные трем, записать в одномерный массив. - C++
Дан двумерный массив размером n x n? заполненный целыми числами. Все его элементы кратные трем, записать в одномерный массив.

Массив: найти номера столбцов с положительными элементами и записать их в одномерный массив - C++
ввести двумерный массив I . найти номера столбцов с положительными элементами и записать их в одномерный массив, отобразить его на экране. ...

Массив: преобразорвать двумерный массив в одномерный и отсортировать его методом пузырька - C++
всем привет. народ помогите с прогой, конкретно с функцией sort (65 строка), она должна двухмерный массив перевести построчно в одномерный...

Целочисленный массив с размером 4*4 .Написать прогу , формирующую одномерный массив - C++
Целочисленный массив с размером 4*4 .Написать прогу , формирующую одномерный массив. #include <iostream> using namespace std; ...

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

18
archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 13:19 #2
С матрицей непонял а 1 счас зделаю токо Длинна масива ? и как заполняетса масив вводом или же обявляетса .?
И есче вопрос вставить ето как после 3 отрицательних 0 со сдвигом масива вправо? или же следующий заменить на 0
0
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 13:24  [ТС] #3
Спсик))

Добавлено через 15 секунд
Цитата Сообщение от archideus Посмотреть сообщение
С матрицей непонял а 1 счас зделаю токо Длинна масива ? и как заполняетса масив вводом или же обявляетса .?
длина массива 30)эм...я больше по дэлфи как бы...))и там есть автозаполнение через функцию рандом))вот тут так же))

Добавлено через 2 минуты
И есче вопрос вставить ето как после 3 отрицательних 0 со сдвигом масива вправо? или же следующий заменить на 0[/QUOTE]

со сдвигом...)
0
archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 13:26 #4
если со сдвигом то масив должен бить об*явлен длиннее чем заполнен потому что если масив 30 то заполняя 31 ми заполним какуюто ячейку памяти неисключено системы или же последний (30) просто вибросить
0
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 13:29  [ТС] #5
глупый вопрос...а нельзя объявить массив 40 к примеру...а заполнить30? ну чтоб потом когда сдвигать...было куда))
0
archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 13:30 #6
Цитата Сообщение от BloodBoom Посмотреть сообщение
глупый вопрос...а нельзя объявить массив 40 к примеру...а заполнить30? ну чтоб потом когда сдвигать...было куда))
Можна ок ща напишу
0
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 13:45  [ТС] #7
Окей=)

Добавлено через 12 минут
"2.Сформировать матрицу размером М вида:
|1 M M-1...........2|
|2 1 M............3..|
|3 2 1 ............4..|
|4 3 2.............. |
|.......................|
|M M-1 M-2......1 |"

Ошибся чуток=)
0
archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 14:06 #8
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define LEN 100
 
int main ()
{
    int array[LEN];
    int len = 30;
    int random;
 
    /* initialize random seed: */
    srand ( time(NULL) );
 
    /* array befor: */
    for ( int i = 0; i < len; i++ ) {
        random = rand() % 50 - 10;
        array[i] = random;
    }
        /* generate secret number: */
    for ( int i = 0; i < len; i++ ) {
        printf("%d ", array[i]);
    }
    printf("\n");
    for ( int i = 0; i <= len - 3; i++ ) {
        if ( array[i] < 0 && array[i+1] < 0 && array[i+2] < 0 ) {
            for ( int j = len; j > i+4; j-- ) {
                array[j] = array[j-1];
            }
            len++;
            array[i+3] = 0;
            i+=4;
        }       
    }
        /* array after: */
    for ( int i = 0; i < len; i++ ) {
        printf("%d ", array[i]);
    }
    printf("\n");
  return 0;
}
Наслаждайса от +1 неткажусь
std= C99
1
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 14:08  [ТС] #9
))Cпасибо))
0
archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 14:17 #10
Если я правильно понял то при М=5 матрица будет


1 5 4 3 2
2 1 5 4 3
3 2 1 5 4
4 3 2 1 5
5 4 3 2 1
0
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 14:22  [ТС] #11
Цитата Сообщение от archideus Посмотреть сообщение
Если я правильно понял то при М=5 матрица будет


1 5 4 3 2
2 1 5 4 3
3 2 1 5 4
4 3 2 1 5
5 4 3 2 1
угу...такой и будет, только..как написать при М изменяющимся я без понятия))
0
archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 14:42 #12
Могу поизвращатса с применением масива
Просто пару дней назад писал функцыю сдвига масива ща подкоректирую и виложу возьму м макс 100
тоесть м от 1 до 100
ето будет оч простой код
1
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 14:44  [ТС] #13
Если не очень сложно выложи плз)
0
archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 15:03 #14
Лови

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
#include <stdio.h>
 
#define LEN 100
 
void shift(int array[], int len) {
    int last;
    
    last = array[len-1];
    for ( int i = len - 1; i > 0; i-- ) {
        array[i] = array[i-1];
    }
    array[0] = last;
}
 
void printarray(int array[], int len) {
    printf("%2d", array[0]);
    for ( int i = 1; i < len; i++ ) {
        printf(" %2d", array[i]);
    }
    printf("\n");
}
int main() {
    int array[LEN];
    int m;
    
    scanf("%d", &m);
    //строим масив от   m до 1
    for ( int i = 0, n = m ; i < m ; i++ , n--) {
        array[i] = n;
    }
       // виводим М раз постоянно здвигая
    for ( int i = 1; i <= m; i++ ) {
        shift(array, m);
        printarray(array, m);
    }
    return 0;
}
Добавлено через 3 минуты
Блин у меня командная строко больше 25 невмещает в ширину
1
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 15:14  [ТС] #15
в нём и запускаю...вернее пытаюсь))хД)))щас смд скачаю))
спасибки)

Добавлено через 8 минут
мде...Линукс раза в 3-и луше виндовса...)ХД) а то я тут на винде не могу даж понять как запустить написаное))
0
18.02.2011, 15:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2011, 15:14
Привет! Вот еще темы с ответами:

Создать одномерный массив, заполнить его случайными значениями, отсортировать массив по убыванию - C++
создать одномерный массив, заполнить его случайными значениями, отсортировать массив по убыванию. получилось вот что: #include...

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

Организовать одномерный массив с вещественными числами и найти первый и последний отрицательный элемент массив - C++
Организовать одномерный массив с вещественными числами и найти первый и последний отрицательный элемент массива;

Сформировать одномерный массив, удалить первый элемент с заданным значением, сдвинуть массив циклически - C++
1)сформировать одномерный массив целых чисел 2)удалить первый элемент с заданным значением 3)сдвинуть массив циклически на К элементов...


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

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

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