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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.75
dimoncheg
 Аватар для dimoncheg
10 / 10 / 2
Регистрация: 18.10.2012
Сообщений: 220
05.12.2012, 16:43     Заменить в одномерном числовом массиве отрицательные элементы их квадратами #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
28
29
#include<iostream>
#include<stdlib.h>
#include<math.h>
#include<time.h>
using namespace std;
int main()
 
{
    
 int k, array [100];
 
      for (k=0; k<100; k++) {
 
     {array [k]=rand();
 
           if (k<0) {
                    
              k=k*k;
}
 
                     }
}
 
printf("array[k]");
 
system("pause");
 
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.12.2012, 16:43     Заменить в одномерном числовом массиве отрицательные элементы их квадратами
Посмотрите здесь:

В одномерном массиве все отрицательные элементы переместить в начало массива C++
в одномерном массиве А состоящем из N элементов найти максимальные элементы и все элементы равные максимальному заменить на 0. C++
C++ С++ заменить в массиве отрицательные элементы их модулем
Заменить в массиве все отрицательные элементы на их модули C++
В двумерном числовом массиве все отрицательные элементы замените нулями C++
C++ Даны действительные числа. Заменить все отрицательные элементы их квадратами
C++ в двумерном числовом массиве * все отрицательное элементы заменить нулями
все отрицательные элементы заменить их квадратами и сортировать по убиванию сделать как функция C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
John Prick
754 / 687 / 123
Регистрация: 27.07.2012
Сообщений: 1,974
Завершенные тесты: 3
05.12.2012, 16:58     Заменить в одномерном числовом массиве отрицательные элементы их квадратами #2
C++
1
2
3
4
if (k<0) {
 
 k=k*k;
 }
Замени на
C++
1
2
3
4
if (array[k]<0) {
 
 array[k]=array[k]*array[k];
 }
Добавлено через 10 минут
Ну а вообще так:
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
/*
заменить в одномерном числовом массиве отрицательные элементы их квадратами.
*/
 
#include <iostream>
#include <algorithm>
#include <stdlib.h>
#include <ctime>
 
int getRand() { return rand() % 20  + 1 - 10; } // от -10 до 10
int getSqrIfLessThanZero(int X)
{
    return ((X < 0) ? X*X : X);
}
 
int main()
{
    setlocale(0, "rus");
    srand(time(0));
 
    const int N = 20;
    int A[N];
    std::generate(A, A + N, getRand);
 
    std::cout << "Исходный массив: ";
    std::copy(A, A + N, std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
 
    std::transform(A, A + N, A, getSqrIfLessThanZero);
 
    std::cout << "Преобразованный массив: ";
    std::copy(A, A + N, std::ostream_iterator<int>(std::cout, " "));
    std::cout << std::endl;
 
    system("pause");
}
Yandex
Объявления
05.12.2012, 16:58     Заменить в одномерном числовом массиве отрицательные элементы их квадратами
Ответ Создать тему
Опции темы

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