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

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

Восстановить пароль Регистрация
 
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 13:16     Одномерный массив #1
Ребят помогите плиз решить одномерный и двумернй массив..на языке Си(не СИ++)
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 |
Буду очень благодарен..
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.02.2011, 13:16     Одномерный массив
Посмотрите здесь:

C++ одномерный массив
Одномерный массив C++
Одномерный массив C++
одномерный массив C++
массив одномерный C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
archideus
 Аватар для archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 13:19     Одномерный массив #2
С матрицей непонял а 1 счас зделаю токо Длинна масива ? и как заполняетса масив вводом или же обявляетса .?
И есче вопрос вставить ето как после 3 отрицательних 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]

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

Ошибся чуток=)
archideus
 Аватар для 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
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 14:08  [ТС]     Одномерный массив #9
))Cпасибо))
archideus
 Аватар для 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
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
угу...такой и будет, только..как написать при М изменяющимся я без понятия))
archideus
 Аватар для archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 14:42     Одномерный массив #12
Могу поизвращатса с применением масива
Просто пару дней назад писал функцыю сдвига масива ща подкоректирую и виложу возьму м макс 100
тоесть м от 1 до 100
ето будет оч простой код
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 14:44  [ТС]     Одномерный массив #13
Если не очень сложно выложи плз)
archideus
 Аватар для 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 невмещает в ширину
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 15:14  [ТС]     Одномерный массив #15
в нём и запускаю...вернее пытаюсь))хД)))щас смд скачаю))
спасибки)

Добавлено через 8 минут
мде...Линукс раза в 3-и луше виндовса...)ХД) а то я тут на винде не могу даж понять как запустить написаное))
archideus
 Аватар для archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 15:17     Одномерный массив #16
Добавлено через 8 минут
мде...Линукс раза в 3-и луше виндовса...)ХД) а то я тут на винде не могу даж понять как запустить написаное))[/QUOTE]

А тогда запускай в чем удобнее. С всюда одинаково пашет что линух что винда что мак
И тебе спасибо за +
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 15:19  [ТС]     Одномерный массив #17
Не...я в нотпад++ загнал это)0а как запустить не знаю))В линуксе компилятор С стоит..остаётся тока написать гсс -0 имя файла и конечное имя))а тут вот ломаю голову
archideus
 Аватар для archideus
10 / 10 / 1
Регистрация: 15.10.2010
Сообщений: 34
18.02.2011, 15:28     Одномерный массив #18
gcc -std=C99 -o <имя создаваемого файла (test.exe)> <исходник к прримеру test.c>

C99 надо полюбому потому что я переменние для цыкла об*являю в самом цикле
файлик должен бить где гцц и ти должен находитса в папке с гцц если неуказивать путь
gcc -std=c99 -o test.exe test.c - пример ето я у себя компилил прямо из нотпада
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2011, 15:36     Одномерный массив
Еще ссылки по теме:

Одномерный массив C++
Одномерный Массив C++
Одномерный массив. Создать массив Х суммы среднеарифметического элементов массива А с каждым элементом массива А C++

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

Или воспользуйтесь поиском по форуму:
BloodBoom
0 / 0 / 0
Регистрация: 18.02.2011
Сообщений: 10
18.02.2011, 15:36  [ТС]     Одномерный массив #19
тогда вопрос это в нотпаде или в смд?

Добавлено через 4 минуты
а всё понял))я забыл гцц скачать хД)
Yandex
Объявления
18.02.2011, 15:36     Одномерный массив
Ответ Создать тему
Опции темы

Текущее время: 03:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru