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

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

Войти
Регистрация
Восстановить пароль
 
Goga2291
Сообщений: n/a
#1

c++ пара задачек - C++

10.05.2009, 19:00. Просмотров 684. Ответов 1
Метки нет (Все метки)

1. В одномерном массиве, состоящим из n вещественных элементов(размерность задается именнованной константой), вычислить:
- максимальный элемент массива
- сумму элементов массива, расположенных до последнего положительного элемента
Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a, b]. Освободившиеся в конце массива элементы заполнить нулями.
2. Дана целочисленная прямоугольная матрица. Определить сумму элементов в тех столбцах, которые не содержат отрицательных элементов.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2009, 19:00     c++ пара задачек
Посмотрите здесь:

C++ Насчет простых задачек по массивам
Примеры решения простеньких задачек на Си C++
C++ Структура - пара
C++ Пара чисел.
C++ Кто может написать коды этих задачек?
Список задачек C++
Вектор и пара C++
C++ Решение задачек (Всероссийской олимпиаде школьников по информатике)
Подскажите, где можно взять много простеньких задачек по с++ для начинающих? C++
C++ Несколько маленьких задачек
Накидать задачек по ссылкам и указателям C++
C++ Структура-пара

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Акелла
Сонный металюга
45 / 45 / 6
Регистрация: 10.05.2009
Сообщений: 295
10.05.2009, 22:52     c++ пара задачек #2
максимальный элемент массива ищетcя элементарно:
C++
1
2
3
4
5
6
7
8
9
float mas [N];
float max;
int i=0;
 
max=mas[i];
for(i=1;i<N;i++)
{
     if (mas[i]>max) max=mas[i];
}
с суммой уточни! - как я понял у нас по нему вперемешку разбросанны "+" и "-" числа... если так то:

C++
1
2
3
4
5
6
7
float mas [N];
float summ=0;
int i;
for(i=0;i<N;i++)
{
    if(mas[i]>0) summ=summ+mas[i];
}
а если массив отсортирован по убыванию (кстати почему бы не сделать этого? =) ) тогда все еще проще

C++
1
2
3
4
5
6
7
summ=0;
i=0;
do
{
   summ=summ+mas[i];
   i++;
}while((mas[i]>0)||(i<N))
Добавлено через 8 минут 55 секунд
а сжать массив и добить его нулями должно быть так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
float mas[N];
int i;
for(i=0;i<N;i++)
{
    if((a<=(fabs(mas[i])))&&((fabs(mas[i]))<=b)) mas[i]=0;
}
for(i=0;i<N;i++)
{
    if(mas[i]=0)
    {
         mas[i]=mas[i+1];
         mas[i+1]=0;
    }
}
Добавлено через 1 минуту 47 секунд
повторюсь - пишу " с головы" - главное чтобы идею понял. ошибки не исключаю -но там уже сам подправишь если что - вещи элементарные
Yandex
Объявления
10.05.2009, 22:52     c++ пара задачек
Ответ Создать тему
Опции темы

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