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

Определить является ли последовательность строго убывающей - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Прога по Структурам http://www.cyberforum.ru/cpp-beginners/thread227776.html
Ни могу понять как в массив забить рациональное число((( Вот задание: Ввести структуру (с полями числитель и знаменатель) для описания понятия рациональное число. Составить и протестировать функции: б) МАКС (X, N), которая возвращает наибольшее из массива X рациональных чисел.
C++ библиотеки в си++ помогите с библиотекой для распознавания русского алфавита http://www.cyberforum.ru/cpp-beginners/thread227757.html
Одномерный массив C++
Найти самую длинную строчку последовательности элементов одномерного массива,образующую геометрическую прогрессию.
C++ Функции, исправить ошибки
Дано N десятоков целых чисел. Определить, сколько из них могут составлять геометрическую прогрессию. Проверку оформить в виде функции. Вот у меня получился такой код. Я в этой теме не сильно разбираюсь. Помогите пожалуйста:wall:Заранее спасибо. #pragma hdrstop #include <math.h> #include <iostream.h> //--------------------------------------------------------------------------- #pragma...
C++ Описать структуру с именем TRAIN http://www.cyberforum.ru/cpp-beginners/thread227710.html
Нужна срочная помощь в написании программы(( помогите пожалуйстаО_о 1. Описать структуру с именем TRAIN, содержащую следующие поля: - название пункта назначения; - номер поезда; - время отправления. 2. Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из шести элементов типа TRAIN; записи должны быть упорядочены по времени отправления...
C++ Проверьте алгоритмы пожалуйста По программированию нужно блок-схемы к 4-ем задачам составить по ГОСТу, а поскольку получается это у меня не правильно, решил использовать программку для составления алгоритмов по коду программы. Посмотрите и напишите пожалуйста, все правильно или нет :) Задача 57: #include <iostream.h> #include <conio.h> int main() { clrscr(); int a, b, i, j, n; подробнее

Показать сообщение отдельно
ForEveR
В астрале
Эксперт С++
7969 / 4731 / 320
Регистрация: 24.06.2010
Сообщений: 10,539
Завершенные тесты: 3
12.01.2011, 17:17     Определить является ли последовательность строго убывающей
10.Вводится последовательность из N целых чисел. Найти количество двух-
и количество трехразрядных чисел в последовательности (функцией
оформить определение количества разрядов числа).
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
#include <iostream>
 
int cnt_dig(int one)
{
    int cnt=0;
    while(one)
    {
         ++cnt;
         one/=10;
    }
    return cnt;
}
 
int main()
{
    int n=0;
    std::cout<<"Enter n: ";
    std::cin>>n;
    int* Arr=new int[n];
    for(int i=0; i<n; ++i)
      std::cin>>Arr[i];
    int dig2=0, dig3=0;
    for(int i=0; i<n; ++i)
    {
         int t=cnt_dig(Arr[i]);
         t == 2 ? dig2++ : t == 3 ? dig3++ : 0;
    }
    std::cout<<"Number of numbs with 2 dig: "<< dig2 <<" with 3 dig: "<< dig3 <<'\n';
    delete[] Arr;
    return 0;
}
Добавлено через 5 минут
13.Дано натуральное число N. Определить M=N!. Проверить, как
изменилось количество разрядов в числе M по сравнению с количеством
разрядов числа N (функцией оформить определение количества разрядов
числа)
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
#include <iostream>
 
int cnt_dig(int one)
{
    int cnt=0;
    while(one)
    {
         ++cnt;
         one/=10;
    }
    return cnt;
}
 
int fact(int one)
{
    int fac=1;
    for(int i=2; i<=one; ++i)
        fac*=i;
    return one < 0 ? 0 : one == 0 || one == 1 ? 1 : fac;
}
 
int main()
{
    int n=0;
    std::cout<<"Enter n: ";
    std::cin>>n;
    int t=fact(n);
    std::cout<<"n! is "<< t <<'\n'
        <<n <<" has "<< cnt_dig(n) <<" digits\n"
        <<t <<" has "<< cnt_dig(t) <<" digits\n";
    return 0;
}
Добавлено через 13 минут
13.Удалить из массива целых чисел все двузначные элементы, являющиеся
простыми числами. Найти среднее арифметическое элементов массива до
и после удаления. Проверить, изменился ли максимальный элемент
массива.
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
41
42
43
44
45
46
47
#include <iostream>
#include <vector>
#include <numeric>
#include <algorithm>
#include <iterator>
 
bool isSimple(int one)
{
    for(int i=2; i<=one/2; ++i)
        if(one % i == 0)
            return false;
    return true;
}
 
int cnt_dig(int one)
{
    int cnt=0;
    while(one)
    {
         ++cnt;
         one/=10;
    }
    return cnt;
}
 
int main()
{
    std::vector<int> vec((std::istream_iterator<int>(std::cin)), std::istream_iterator<int>());
    double middle=std::accumulate(vec.begin(), vec.end(), 0) / static_cast<double>(vec.size());
    std::vector<int>::iterator iter=std::max_element(vec.begin(), vec.end());
    std::cout<<"Before removing of some elements array is\n";
    std::copy(vec.begin(), vec.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout<<"\nmiddle is: "<< middle <<'\n'
        <<"maximum element is: "<< *iter <<'\n';
    vec.erase(std::remove_if(vec.begin(), vec.end(), [](int t) -> bool
    {
        return cnt_dig(t) == 2 && isSimple(t);
    }), vec.end());
    middle=std::accumulate(vec.begin(), vec.end(), 0) / static_cast<double>(vec.size());
    iter=std::max_element(vec.begin(), vec.end());
    std::cout<<"After removing of some elements array is\n";
    std::copy(vec.begin(), vec.end(), std::ostream_iterator<int>(std::cout, " "));
    std::cout<<"\nmiddle is: "<< middle <<'\n'
        <<"maximum element is: "<< *iter <<'\n';
    system("pause");
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru