Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Shkipper86
0 / 0 / 0
Регистрация: 29.08.2013
Сообщений: 30
1

Все положительные элементы массива заменить на значение "1", отрицательные на "-1"

03.09.2013, 15:39. Просмотров 926. Ответов 5
Метки нет (Все метки)

Дана последовательность чисел a[i] (i=1, 2, …, n). Все положительные элементы заменить на значение "1", отрицательные на "-1".
написал до:
C
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
int main()
{
int b,i,N,res;
int a[100];
  printf ("введите количество элементов массива N:-->");
  scanf ("%d",&i);
  printf ("Через пробел введите %d элементов массива:-->",i);
  for (N=0;N<i;N++)
          {
  scanf ("%d",a);
а вот что делать дальше ума не приложу.Знаю что просто, а сформулировать не могу. в общем HELP!!!!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.09.2013, 15:39
Ответы с готовыми решениями:

Создать запись "Двигатель", которая содержит элементы "Название", "Мощность", "Скорость", "Цена"
Создать запись &quot;Двигатель&quot;, которая содержит элементы &quot;Название&quot;, &quot;Мощность&quot;, &quot;Скорость&quot;,...

В строках текста, оканчивающихся на "*", заменить все "b" на "с"
В строках текста, Оканчивающихся на &quot;*&quot;, заменить все &quot;b&quot; на &quot;с&quot;. #include &lt;stdio.h&gt; #include...

В строке заменить последовательность слов "один", "два", "три"
Помогите,плз) В строке заменить последовательность слов &quot;один&quot;, &quot;два&quot;, &quot;три&quot; на &quot;1-2-3&quot;

Дана строка символов. Заменить все буквы "И" на знак "+".
помогите пожалуста Дана строка символов. Заменить все буквы &quot;И&quot; на знак &quot;+&quot;.

"Перевернуть" в строке все слова (Например: "Жили были" в "илиЖ илыб")
&quot;Перевернуть&quot; в строке все слова. (Например: &quot;Жили были дед и баба&quot; - &quot;илиЖ илиб дед и абаб&quot;)

5
logincyberforu
30 / 31 / 0
Регистрация: 26.08.2013
Сообщений: 282
03.09.2013, 15:49 2
Shkipper86, типа так:
if d[i%]>0 then d[i%]=1 else d[i%]=-1 endif

правда это не c, да ваще хз какой это яп. но суть пропустить масив через цикл с данным условием
0
fanatdebian
Z3JheSBoYXQ=
339 / 234 / 83
Регистрация: 08.07.2012
Сообщений: 577
03.09.2013, 16:08 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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#include <stdio.h>
 
 
#define SIZE 10
 
int GetIntArray(int *, int);
void SortArray(int *, int);
 
int main(){
    int array[SIZE] = {0};
    
    
    GetIntArray(array,SIZE);
    SortArray(array,SIZE);
    
    int index;
    for (index=0; index<SIZE; index++){
        printf("%d ", array[index]);
    }
    
    printf("\n");
    
    
    return 0;
}
 
void SortArray(int *array, int count){
    /*сортируем согласно поставленной задачи*/
    int index;
    
    for (index=0; index<count; index++){
        array[index] = (array[index] >= 0) ? 1: -1;
    }
    
}
 
int GetIntArray(int *array, int count){
    
    /* заполняем массив целочисленными значениями, 
     * проверка на переполнение массива не проводится */
     
    int index;          
    
    for(index=0; index<count; index++){
        char buffer[SIZE] = {0};
        printf("Integer value: ");
        if (fgets(buffer, SIZE, stdin)){
            if (sscanf(buffer,"%d", &array[index])){
                printf("Success put int value to array\n");
            }
            else{
                printf("Error put int value to array\n");
                index--;
            }
        }                   
        else{
            printf("error read from stdin\n");
            index+=count;
        }
    }
    
    return 1;
}
1
Catstail
Модератор
24391 / 12330 / 2241
Регистрация: 12.02.2012
Сообщений: 20,034
03.09.2013, 21:42 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
#include <stdio.h>
 
void func(int *Arr, int n)
{
    int i;
    for (i=0; i<n; i++)
    {
        if (*(Arr+i) > 0) *(Arr+i)=1;
        if (*(Arr+i) < 0) *(Arr+i)=-1;
    }
}
 
int main(int argc, char* argv[])
{
    int A[]={1,2,3,4,5,-2,-4,0,-8};
    int i;
    printf("Initial array:\n");
    for (i=0; i<9; i++) printf("%d ",A[i]);
    printf("\n");
    func(A,9);
    printf("Array after action:\n");
    for (i=0; i<9; i++) printf("%d ",A[i]);
    printf("\n");
    return 0;
}
И "вся любовь"...
1
Миниатюры
Все положительные элементы массива заменить на значение "1", отрицательные на "-1"  
fanatdebian
Z3JheSBoYXQ=
339 / 234 / 83
Регистрация: 08.07.2012
Сообщений: 577
03.09.2013, 22:39 5
Цитата Сообщение от Catstail Посмотреть сообщение
Да ЗАЧЕМ ЖЕ СОРТИРОВАТЬ???

"...
Внимательнее смотрим код, иногда то, что написано не совсем точно отражает содержание. Описание "Сортировка" была применения для образа, а по факту смотри код функции. Тернаркой заменяю в одном проходе.
0
Catstail
Модератор
24391 / 12330 / 2241
Регистрация: 12.02.2012
Сообщений: 20,034
03.09.2013, 22:42 6
Цитата Сообщение от fanatdebian Посмотреть сообщение
Внимательнее смотрим код,
- а мой код "смотреть внимательно" необходимости нет - все просто, как пятка...
0
03.09.2013, 22:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.09.2013, 22:42

Заменить в строке все буквы "О" на "Ъ", а буквы "Е" - на случайные символы
Помогите плз с программой на Си: Дана символьная строка. Заменить в ней все буквы &quot;О&quot; на &quot;Ъ&quot;, а...

Ввести структуру "историческое событие" с полями "число", "месяц", "год", "событие"
Ввести структуру ИСТОРИЧЕСКОЕ СОБЫТИЕ с полями ЧИСЛО, МЕСЯЦ, ГОД, СОБЫТИЕ. Составить и...

Заменить все "е" в "Е" в строке с кириллицей
a)Написать программу, которая работает на строку и заменяет все &quot;е&quot; в &quot;Е&quot;.Dоступ к отдельным знакам...


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

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

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