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

Задачи с массивами - C++

Восстановить пароль Регистрация
 
Acclaim
Сообщений: n/a
16.10.2011, 13:35     Задачи с массивами #1
Помогите пожалуйста,решить 2 задачи(только недавно стал изучать Си и не очень понимаю его)
1)Ввести одномерный массив A из N элементов. Каждый второй
элемент, в том случае, если он отрицателен, возвести в квадрат. Массив
вывести до и после преобразования.
2) Ввести одномерный массив A , вывести его. Найти произведение его элементов, принадлежащих интервалу [min/2; max/2]Значением этого произведения заменить первый и предпоследний элементы массива.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2011, 13:35     Задачи с массивами
Посмотрите здесь:

C++ Задачи с массивами (Ошибка)
C++ Задачи с массивами
C++ Работа с файлами, массивами и т.д.(2 задачи)
C++ Задачи с массивами для C++ начального уровня
C++ Задачи с массивами
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Wanderer1
23 / 23 / 4
Регистрация: 26.03.2011
Сообщений: 54
16.10.2011, 13:55     Задачи с массивами #2
извиняюсь за вопросы сразу же. а в каком месте проблема, ошибка? что не понятно? до чего дошли? или не знаете с чего начать? я просто смысла не вижу, если вам кто-то напишет программу, подозреваю вы не поймете как оно сделано и почему работает...
предлагаю начать с алгоритма
x@kirsch@)))
 Аватар для x@kirsch@)))
9 / 9 / 0
Регистрация: 11.04.2011
Сообщений: 29
16.10.2011, 14:15     Задачи с массивами #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
#include <iostream>
const int nm=30;
 
using namespace std;
 
int main()
{setlocale(LC_ALL,"Russian");
    int a[nm];
    int n;
    cout<<" введите размер массива";
    cin>>n;
    for (int i=0; i<n; i++)
       cin>>a[i];
       // печать
       for (int i=0; i<n; i++)
         cout<<a[i]<<" ";
         cout<<endl;
    for (int i=1; i<n; i+=2){
      if (a[i]<0) a[i]=a[i]*a[i]; cout<<" ";}
      // печать после замены
      cout<<"печать после замены\n";
       for (int i=0; i<n; i++)
         cout<<a[i]<<" ";
         cout<<endl;
 
    return 0;
}
amor1k
Студент
 Аватар для amor1k
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
16.10.2011, 15:09     Задачи с массивами #4
C++
1
(int i=1; i<n; i+=2)
а почему именно с первого элемента а не с нулевого?
x@kirsch@)))
 Аватар для x@kirsch@)))
9 / 9 / 0
Регистрация: 11.04.2011
Сообщений: 29
16.10.2011, 15:20     Задачи с массивами #5
я так поняла нужно заменить каждый второй
если с нуля то он заменит первый если тот отрицателен
amor1k
Студент
 Аватар для amor1k
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
16.10.2011, 15:46     Задачи с массивами #6
может можно пропустить ноль.
C++
1
if (a[0] <= 0) continue;
или

C++
1
if (a[i] == 0 && a[i] < 0) continue;


Добавлено через 1 минуту
прост если идти с нуля, то получится 0 2 4 8 ...
а если с единицы, то - 1 3 5 7 ...
Правильно?
x@kirsch@)))
 Аватар для x@kirsch@)))
9 / 9 / 0
Регистрация: 11.04.2011
Сообщений: 29
16.10.2011, 16:13     Задачи с массивами #7
можно и так ) но нам не разрешают использовать continue в таких случаях (
Acclaim
Сообщений: n/a
16.10.2011, 18:30     Задачи с массивами #8
кстати неправда,что я не пойму как делать)код оказался легче даже)больше спасибо,но можете объяснить вот что:
Цитата Сообщение от x@kirsch@))) Посмотреть сообщение
const int nm=30;
using namespace std;
Цитата Сообщение от x@kirsch@))) Посмотреть сообщение
{setlocale(LC_ALL,"Russian");
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2011, 18:46     Задачи с массивами
Еще ссылки по теме:

Небольшие задачи с массивами C++
C++ Задачи с массивами
Задачи с массивами C++

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

Или воспользуйтесь поиском по форуму:
amor1k
Студент
 Аватар для amor1k
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
16.10.2011, 18:46     Задачи с массивами #9
C++
1
2
#define NM 30
const int nm=30;
Это константы, в данном случае размерности массива а[nm]. Оба варианта идентичны.

C++
1
using namespace std;
пространство имён. Чтобы вместо 'std::cout' писать 'cout' и .т.п.

C++
1
setlocale(LC_ALL,"Russian");
Чтобы в консоли отображались русские символы.
Yandex
Объявления
16.10.2011, 18:46     Задачи с массивами
Ответ Создать тему
Опции темы

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