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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Fagot
0 / 0 / 0
Регистрация: 25.04.2009
Сообщений: 4
#1

Операторы принятия решения и операторы цикла. - C++

21.05.2009, 19:56. Просмотров 1578. Ответов 5
Метки нет (Все метки)

Пожалуйста, помогите. Нужно срочно сделать задания:
1)Ввести с клавиатуры три символа sym1, sym2, sym3. Поменять их значения таким образом, чтобы в sym3 оказалось значение, находящееся ближе всего к началу алфавита, в sym2 – следующее значение, в sym1 – значение, находящееся ближе всего к концу алфавита.

2)Ввести с клавиатуры 30 действительных чисел (положительных и отрицательных). Определить количество элементов, больших по модулю, чем введенное первым.

3)Вводить с клавиатуры целые положительные числа, пока не будет введено отрицательное число. Определить максимальное из нечетных значений.

Пожалуйста, а то уже башка не соображает.. *Убиваюсь об стенку*
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.05.2009, 19:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Операторы принятия решения и операторы цикла. (C++):

«Языки и технологии программирования» «Операторы цикла. Условные операторы» - C++
Не получается сделать что бы программа выводила все значения в промежутке, она выводит только одно. условия | ((z^3)+sin...

Операторы языка С++: операторы цикла (исправьте программу) - C++
#include <iostream> #include <cstdlib> #include <cmath> using namespace std; int main() { int a,n; float y,x; cout<<...

Операторы цикла и операторы передачи управления - C++
Вычислить сумму ряда S с погрешностью эпсилон, задаваемой с клавиатуры. Вывести количество итераций, сделанных при вычислении. Если...

Условные операторы.Операторы цикла - C++
1)По номеру y(y>0) некоторого года определить с-номер его столетия(учесть что к примеру началом 20 столетия был 1901 а не 1900 год.)...

С++.Операторы в С++: условные операторы, операторы break и continue - C++
Выяснить, пересекаются ли параболы у=аx2+bx+с и у=dx2+ex + f. При положительном ответе найти точки пересечения.

Определить и вывести количество дней между двумя датами (логические операторы и операторы ветвлений) - C++
Задачка Пользователь вводит две даты (день, месяц, год в виде целых чисел). Необходимо определить и вывести количество дней между этими...

5
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
21.05.2009, 21:06 #2
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
// Console tests.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include <iostream>
 
int _tmain(int argc, _TCHAR* argv[])
{
    const int size=10;
    int m[size];
    int max;
    max=0;
    for(int i=0;i<size;i++)
    {
        std::cin>>m[i];
        if(m[i]<0)
        {
            //  exit(1);если сразу выход без показа введеных до етого чисел.
            break;
        }   
        if(m[i]%2)
        {
            if (max<m[i])
                max=m[i];
        }
    }
    for(int i=0;i<size;i++)
    {
        std::cout<<m[i]<<std::endl;
    }
    std::cout<<"Max ne4et raven"<<max<<std::endl;
    _getch();
 
 
}
0
Rififi
2360 / 1053 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
21.05.2009, 21:09 #3
Ввести с клавиатуры 30 действительных чисел (положительных и отрицательных).
Определить количество элементов, больших по модулю, чем введенное первым.

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
#include <algorithm>
#include <functional>
#include <cmath>
 
template <typename T, template <typename> class P>
struct fabs_ : public std::unary_function<T, bool>
{
    fabs_(const T& threshold) : threshold_(threshold) {}
    bool operator() (const T& v) const
    {       
        return p_(std::fabs(v), threshold_);
    }
    const T threshold_;
    const P<T> p_;
};
 
template <typename T>
typename std::iterator_traits<T>::difference_type
count(T begin, T end)
{
    typedef typename std::iterator_traits<T>::value_type value_type;
    fabs_<value_type, std::greater> ff(*begin++);
    return std::count_if(begin, end, ff);
}
 
int main()
{
    const size_t N = 30;
    float arr[N];
    for(size_t i=0; i<N; i++)
        std::cin >> arr[i];
    size_t cnt = count(arr, arr+N);
 
    return 0;
}
0
Fagot
0 / 0 / 0
Регистрация: 25.04.2009
Сообщений: 4
22.05.2009, 07:24  [ТС] #4
Спасибо большое.
Но вот во 2 коде(по 2 заданию), я даже не оч разобрался и не понимаю многое О_О
По-моему что-то мы даже ещё не "проходили")
0
BullDogoff
10 / 10 / 1
Регистрация: 16.05.2009
Сообщений: 30
22.05.2009, 10:32 #5
По первой задаче смотри здесь, второй пост, пузырьковая сортировка (скорее всего, её от тебя и ждут).
Насчёт второй - вот код, простой как три рубля..
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 <iostream.h>
 
float Module(float);
 
main()
{
    float First, Next;
    int Counter=0;
 
    cout<<"Insert the first number: ";
    cin>>First;
 
    for(int i=0; i<29; i++)
    {
        cout<<"Insert next number(# "<<i+1<<"): ";
        cin>>Next;
        if(Module(First)<Module(Next)) Counter++;
    }
 
    cout<<"Quantity of the numbers, which value bigger than the first: "<<Counter<<"\n\n";
    
    return 0;
}
 
float Module(float i)
{
    float q;
    
    if(i>0) q=i;
    else q=-i;
    
    return q;
}
Сообщения переводил, правда, Promt'ом, обленился я чего-то в последнее время

Добавлено через 4 минуты 52 секунды
Rififi, чего-то ты и правда перегнул, не учат такому в школе Нас, помню, вообще три года включать и выключать учили..
0
Rififi
2360 / 1053 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
22.05.2009, 12:33 #6
BullDogoff,
Rififi, чего-то ты и правда перегнул
Надо избавляться от ограниченности мышления, и не рассеиваться в деталях, а видеть общую картину. (: А она в общем-то проста - в основе кода лежит стандартный алгоритм count_if - подсчёт элементов, удовлетворяющих некоторому условию. Всё. Остальное - всего лишь обвязка.
0
22.05.2009, 12:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.05.2009, 12:33
Привет! Вот еще темы с ответами:

Операторы присваивания, ввода- вывода. Операторы ветвления, выбора - C++
Даны два ненулевых числа. Найти их сумму, разность, произведение, частное, остаток и целую часть от деления. Добавлено через 8 часов...

ОПЕРАТОРЫ ЦИКЛА - C++
Я написал программу для вычисления y(x)=(sin(x+c)-d)/(e+a) при x=1.5(0.1)2, но её нужно переделать используя do while. #include...

Операторы цикла (while, do...while) - C++
Вводится точность e. Вычислить сумму ряда (LR2). Вычисления продолжать до тех пор, пока очередное слагаемое не станет меньше e.

Операторы цикла while и do … while - C++
Здравствуйте,помогите пожалуйста решить задачу простым способом. 1) Вводить последовательность чисел до тех пор, пока их сумма...


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

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

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