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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.88
nell0real
0 / 0 / 0
Регистрация: 31.10.2011
Сообщений: 17
#1

Все отрицательные члены массива заменить их квадратами - C++

31.10.2011, 13:56. Просмотров 1184. Ответов 13
Метки нет (Все метки)

В массивах не силен, поэтому обращаюсь к знающим людям, форумные троли лесом.

1.Если в данном массиве целых чисел а1...аn, есть хотя бы один член, меньший чем -2, то все отрицательные члены заменить их квадратами.
2.Дан массив N целых чисел (1<N<=55). Определить количество и адреса элементов массива, значения которых не превышают заданного значения Х.
3.Дан массив из N вещественных чисел. Получить количество отрицательных членов массива и произведение элементов, принадлежащих отрезку [B,C]
4.Составить программу определения суммы и количества положительных элементов массива вещественных чисел размерностью N (1<N<=50)
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2011, 13:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Все отрицательные члены массива заменить их квадратами (C++):

Заменить все отрицательные элементы массива их квадратами - C++
Нужна помощь с задачей. Не пишу на c++, потому не знаю как это написать. 2) В двумерном вещественном динамическом массиве замените...

Все отрицательные члены массива увеличить на 0,5, а все неотрицательные заменить на 0,1 - C++
Помогите разобраться, что делаю не так. Проблема с выводом измененного массива. Дана последовательность чисел a1, a2, a3, … . Количество...

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

Все отрицательные элементы вектора заменить их квадратами - C++
Если действительный вектор X имеет хотя бы один элемент, который меньше 2,# То все отрицательные элементы заменить их квадратами, оставив...

В массиве все отрицательные члены увеличить на 0,5, а все неотрицательные заменить на 0,1 - C++
Добрый вечер, я только недавно начал учиться в этой сфере,помогите, есть проблемы, прошарил весь форум, на паре ввожу все алгоритмы, и...

Даны действительные числа. Заменить все отрицательные элементы их квадратами - C++
Я новичок в программировании, помогите. Даны действительные числа А1....,А18. Заменить все отрицательные элементы их квадратами и вывести...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Lorienara
2 / 2 / 1
Регистрация: 07.10.2011
Сообщений: 87
31.10.2011, 14:17 #2
Ну что Вам уже помогли? Если нет то я Вам решу эти несложные примерчики.
1
nell0real
0 / 0 / 0
Регистрация: 31.10.2011
Сообщений: 17
31.10.2011, 14:20  [ТС] #3
Lorienara, нет не помогли. Буду премного благодарен за помощь.
0
Lorienara
2 / 2 / 1
Регистрация: 07.10.2011
Сообщений: 87
31.10.2011, 14:50 #4
Скиньте свой е-mail пожалуйста - я вам по мере решения смогу скидывать задачи...не уверен что могу выносить на суд профи свои решения.
1
-=ЮрА=-
Заблокирован
Автор FAQ
31.10.2011, 14:50 #5
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от nell0real Посмотреть сообщение
1.Если в данном массиве целых чисел а1...аn, есть хотя бы один член, меньший чем -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
28
29
30
31
32
33
#include <stdio.h> //printf scanf
#include <stdlib.h>//malloc realloc
 
int main()
{   
    
    printf("Enter n : ");int n;scanf("%d",&n);
    int i, flag = 0, * arr = (int *)malloc(n*sizeof(int));
    //Ââîäèì ïîñëåäîâГ*òåëüГ*îñòü
    for(i = 0; i < n; i++)
    {
        printf("arr[%d] = ",i + 1);
        scanf("%d",&arr[i]);
        //ГЏГ*Г°Г*ëëåëüГ*Г® Г± ââîäîì ñìîòðèì
        //ГҐГ±ГІГј ëè ýëåìåГ*ГІГ» < -2
        if(arr[i] < -2)
            flag = 1;
    }
    if(flag == 0)
        printf("Array not contain numbers less than - 2\n");
    else
    {
        printf("\tSquare negative values\n");
        for(i = 0; i < n; i++)
        {
            if(arr[i] < 0)
                arr[i] *= arr[i];
            printf("arr[%d] = %d\n",i + 1,arr[i]);
        }
    }
    system("pause");
    return 0;
}
2
Миниатюры
Все отрицательные члены массива заменить их квадратами  
Lorienara
2 / 2 / 1
Регистрация: 07.10.2011
Сообщений: 87
31.10.2011, 14:58 #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
#include "stdio.h"
#include "time.h"
void kvadrat(int mass[],int n);
 
int main()
{   int n=10;
    int min =0;
    int a[10] = {1,2,-1,-1,14,24,45,9,16,23};
    int i=0;
 
    while (i!=9) // проверка на -2; 
    {   
        if (a[i]<-2)
        {min = a[i];
        }
        printf("%3d",a[i]);
        i++;
    }
    if (min != 0) // если  значения меньшие -2 есть запускаем функцию квадрат
    {
        printf("\n");
        kvadrat(a,n);
    }
    scanf("%d",&n);
    return 0;
}
 
void kvadrat(int mass[],int n) // преобразует элементы <0 в их квадраты
{
    int  i=0;
    for (i;i<10;i++)
    {
        if (mass[i]<0)
        {
            mass[i]=(mass[i]*mass[i]);
        }
        printf("%4d",mass[i]);
    }
 
}
0
-=ЮрА=-
Заблокирован
Автор FAQ
31.10.2011, 15:00 #7
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от nell0real Посмотреть сообщение
2.Дан массив N целых чисел (1<N<=55). Определить количество и адреса элементов массива, значения которых не превышают заданного значения Х.
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> //printf scanf
#include <conio.h> //getch
 
int main()
{   
    int i, x, n, arr[55], nCount = 0;
    printf("Enter n (1 < N < 55) : ");scanf("%d",&n);
    printf("Enter x : ");scanf("%d",&x);
    //Вводим последовательность
    for(i = 0; i < n; i++)
    {
        printf("arr[%d] = ",i + 1);
        scanf("%d",&arr[i]);
    }
    for(i = 0; i < n; i++)
    {
        if(arr[i] < x)
        {
            nCount++;//Считаем кол-во чисел < x
            //Печатаем эти числа и их адреса
            printf("%d ADR : 0x%p\n",arr[i], &arr[i]);
        }
    }
    printf("Array contain %d elements less than x\n",nCount);
    printf("Press any key to continue\n");
    getch();
    return 0;
}
1
Миниатюры
Все отрицательные члены массива заменить их квадратами  
-=ЮрА=-
Заблокирован
Автор FAQ
31.10.2011, 15:33 #8

Не по теме:

nell0real, остальные задания доделаю как увижу что Вы посмотрели этот топик, если нужно будет перебить на С++ для меня это проблем не составит...



Добавлено через 31 минуту

Не по теме:

Lorienara, чуточку обращу ваше внимание

Цитата Сообщение от Lorienara Посмотреть сообщение
int a[10] = {1,2,-1,-1,14,24,45,9,16,23};
- если вбиваете одномерный статический массив, то не обязательно писать его размерность, компилятор и сам может это за Вас сделатьint a[] = {1,2,-1,-1,14,24,45,9,16,23};

Цитата Сообщение от nell0real Посмотреть сообщение
есть хотя бы один член, меньший чем -2, то все отрицательные члены заменить их квадратами.
А у вас
Цитата Сообщение от Lorienara Посмотреть сообщение
// есть хотя бы один член,если *значения меньшие -2 есть запускаем функцию ква
- вы немного не вчитались в задание, нужно было все отрицательные в квадрат возвести если есть хотябы одно число меньшее -2

Цитата Сообщение от Lorienara Посмотреть сообщение
mass[i]=(mass[i]*mass[i]);
- это можно так записать mass[i] *= mass[i];
PS:Разобрал т.к. Вы сами попросили, обижать ни в коем случае цели не ставил!

2
nell0real
0 / 0 / 0
Регистрация: 31.10.2011
Сообщений: 17
31.10.2011, 18:25  [ТС] #9
-=ЮрА=-,
Lorienara,
огромное спасибо! если не трудно напишите 3 и 4 задания
0
-=ЮрА=-
Заблокирован
Автор FAQ
31.10.2011, 18:47 #10
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от nell0real Посмотреть сообщение
3.Дан массив из N вещественных чисел. Получить количество отрицательных членов массива и произведение элементов, принадлежащих отрезку [B,C]
- мало времени, поэтому скомпилировал, но не тестировал(всё же думаю что норм всё будет)
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
#include <stdio.h> //printf scanf
#include <stdlib.h>//malloc system
 
int main()
{   
    
    printf("Enter n : ");int n;scanf("%d",&n);
    int i, m = 0, * arr = (int *)malloc(n*sizeof(int));
    printf("Enter B :");int b;scanf("%d",&b);
    printf("Enter C :");int c;scanf("%d",&c);
    long mult = 1;//ГЌГ*Г·Г*ëüГ*îå ïðîèçâåäåГ*ГЁГҐ
    int nCount = 0;//×èñëî Г·ГЁГ±ГҐГ« Гў ГЁГ*òåðâГ*ëå [Г‚;Г‘]
    //Ââîäèì ïîñëåäîâГ*òåëüГ*îñòü
    for(i = 0; i < n; i++)
    {
        printf("arr[%d] = ",i + 1);
        scanf("%d",&arr[i]);
        //ГЏГ*Г°Г*ëëåëüГ*Г® Г± ââîäîì 
        //Г±Г·ГЁГІГ*ГҐГ¬ îòðèöГ*òåëüГ*ûå
        if(arr[i] < 0)
            m++;
        if(b <= arr[i] && arr[i] <= c)
        {
            nCount++;
            mult *= arr[i];
        }
    }
    if(m == 0)
        printf("Array not contain negative elements\n");
    else
        printf("Array contain %d negative elements\n",m);
    if(nCount == 0)
        printf("Array not contain number in interval[B;C]\n");
    else
        printf("Mult elements in interval [B;C] is : %u\n",mult);
    system("pause");
    return 0;
}
Добавлено через 1 минуту

Не по теме:

nell0real, 4-е если до завтра никто не сделает выложу сюда, сейчас просто времени уже нет делать

1
nell0real
0 / 0 / 0
Регистрация: 31.10.2011
Сообщений: 17
31.10.2011, 18:49  [ТС] #11
Добавлено через 1 минуту


все равно спасибо! что бы я без вас делал ребят
0
-=ЮрА=-
Заблокирован
Автор FAQ
01.11.2011, 10:30 #12
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от nell0real Посмотреть сообщение
4.Составить программу определения суммы и количества положительных элементов массива вещественных чисел размерностью N (1<N<=50)
- как и обещал
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
#include <stdio.h> //printf scanf
#include <stdlib.h>//system
 
int main()
{   
    
    printf("Enter n (1 < N < 50): ");
    int n;scanf("%d",&n);
    int i, arr[50];
    long sum = 1;//ГЌГ*Г·Г*ëüГ*Г*Гї ñóììГ*
    int  m   = 0;//×èñëî ïîëîæèòåëüГ*ûõ Г·ГЁГ±ГҐГ«
    //Ââîäèì ïîñëåäîâГ*òåëüГ*îñòü
    for(i = 0; i < n; i++)
    {
        printf("arr[%d] = ",i + 1);
        scanf("%d",&arr[i]);
        //ГЏГ*Г°Г*ëëåëüГ*Г® Г± ââîäîì 
        //Г±Г·ГЁГІГ*ГҐГ¬ ïîëîæèòåëüГ*ûå
        if(0 < arr[i])
        {
            sum += arr[i];
            m++;
        }
    }
    if(m == 0)
        printf("Array not contain positive elements\n");
    else
    {
        printf("Array contain %d positive elements\n",m);
        printf("Sum of positive elements is : %d\n",sum);
    }
    system("pause");
    return 0;
}
0
Миниатюры
Все отрицательные члены массива заменить их квадратами  
Olga_
840 / 182 / 16
Регистрация: 01.08.2011
Сообщений: 502
01.11.2011, 10:35 #13
Цитата Сообщение от Lorienara Посмотреть сообщение
не уверен что могу выносить на суд профи свои решения.

Не по теме:

ну что же вы, наоборот, если что не так, то вам подскажут или поучатся вашим алгоритмам, это же форум) Надо же развиваться, а не вариться в собственном соку

1
-=ЮрА=-
Заблокирован
Автор FAQ
01.11.2011, 10:47 #14
nell0real, я переделывая код с 3-го топика забыл инит у суммы поменять
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
long sum = 1;//Начальная сумма
правильно long sum = 0;!!!!Простите за невнимательность
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.11.2011, 10:47
Привет! Вот еще темы с ответами:

Сортировка (все отрицательные компоненты заменить их квадратами, оставив другие без изменения...) - C++
Если действительный вектор X (x1, x2, ..., xm) имеет хотя бы одну компоненту, которая меньше 2, то все отрицательные компоненты заменить их...

все отрицательные элементы заменить их квадратами и сортировать по убиванию сделать как функция - C++
все отрицательные элементы заменить их квадратами и сортировать по убиванию сделать как функция . Спасибо за ранее!! int ikt (int...

Найти сумму положительных элементов массива до максимального и заменить отрицательные элементы квадратами - C++
В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1)сумму положительных элементов массива, расположенных до...

В последовательности заменить все отрицательные члены на -1, положительные на 1, а нулевые оставить без изменений - C++
Уважаемые програмисты помогите пожалуйста решить пару задач, очень надо. Заранее спасибо. 1. Дано натуральное число n, и вещественные...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.11.2011, 10:47
Ответ Создать тему
Опции темы

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