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

Вычислить количество элементов массива, лежащих в диапазоне от А до В - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ошибки при компилировании http://www.cyberforum.ru/cpp-beginners/thread1098807.html
ребята, подскажите что за чепуха
C++ Цифра в степени Нужна помощь в создании программы которая найдет цифру в заданной степени без pow(). Я запутался создавая эту программу через циклы. Поможете? http://www.cyberforum.ru/cpp-beginners/thread1098797.html
Строка, замена гласных C++
сделал программу чтобы заменяло все гласные на 3 а преподаватель усложнил задачу и надо заменить на 33 и с тем проблема два числа писать не хочет помогите бидь Пожалуйста #include <iostream.h> int main(){ char arr; cout << "\nDo enter any string but no more then "
Поиск слова на экране C++
Хочу написать программу, которая будет на экране находить слово (в текстовом формате) и выводить координаты его нахождения по осям Х У в текстовый редактор. Возможно ли это сделать? Если да, то может подскажете, где взять подобный код? Мои многочисленные попытки найти его, увенчались ничем.
C++ Разработать программу, которая вычисляет факториал и состоит из функций http://www.cyberforum.ru/cpp-beginners/thread1098783.html
я ее сделал но меня есть вопрос: 1. я сделал массив из ста элементов, а можно его сделать полностью динамический чтобы пользователь вписывал количество 2. нужно к концу выполнения писать код для очистки оперативной памяти или она сама освободится задача разработать программу, которая вычисляет факториал и состоит из функций...
C++ Перенос вычислений в подпрограмму Здравствуйте, есть лаба в которой нужно найти след трёх прямоугольных матриц и вывести на экран наибольший их них. Вычисления нужно оформить как подпрограмму. Как это сделать? #include <stdio.h> #include <conio.h> #include <math.h> #define n 2 #define m 3 #define o 3 #define p 4 int main() { подробнее

Показать сообщение отдельно
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6228 / 2957 / 287
Регистрация: 04.12.2011
Сообщений: 7,888
Записей в блоге: 3
17.02.2014, 23:25     Вычислить количество элементов массива, лежащих в диапазоне от А до В
Цитата Сообщение от avatar1870 Посмотреть сообщение
ой, мы ещё до такого не дошли, не примут у меня такой код(
если объясните, как работает, - примут. И наградят персональным отрезом на костюм.
В любом случае можно и вручную перегрузить:
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
#include <iostream>
 
using std::cin;
using std::cout;
using std::endl;
 
 
int number_within_the_limmmits(int *arr, size_t arr_sz, int left, int right){
if(left>right){
int tmp_i = left;
left = right;
right = tmp_i;
    }
int number_whithin = 0;
for(size_t i = 0; i < arr_sz; ++i)
if(arr[i] >= left && arr[i] <= right) number_whithin++;//включая границы
return number_whithin;
}
 
int number_within_the_limmmits(float *arr, size_t arr_sz, float left, float right){
if(left>right){
float tmp_i = left;
left = right;
right = tmp_i;
    }
int number_whithin = 0;
for(size_t i = 0; i < arr_sz; ++i)
if(arr[i] >= left && arr[i] <= right) number_whithin++;//включая границы
return number_whithin;
}
 
int ind_of_max_element(int *arr, size_t arr_sz){
int ind_of_max=0;
int max_element = arr[ind_of_max];
for(size_t i = 1; i < arr_sz; ++i){
    if(max_element < arr[i]){
        max_element = arr[i];
ind_of_max = i;
    }
}
return ind_of_max;
}
 
int ind_of_max_element(float *arr, size_t arr_sz){
int ind_of_max=0;
float max_element = arr[ind_of_max];
for(size_t i = 1; i < arr_sz; ++i){
    if(max_element < arr[i]){
        max_element = arr[i];
ind_of_max = i;
    }
}
return ind_of_max;
}
 
int summ_arr_after_max(int *arr, size_t arr_sz){
int ind_of_max=ind_of_max_element(arr,  arr_sz);
int summ_after_max = 0;
for(size_t i = ind_of_max+1; i < arr_sz; ++i)
summ_after_max += arr[i];
return summ_after_max;
}
 
float summ_arr_after_max(float *arr, size_t arr_sz){
int ind_of_max=ind_of_max_element(arr,  arr_sz);
float summ_after_max = 0;
for(size_t i = ind_of_max+1; i < arr_sz; ++i)
summ_after_max += arr[i];
return summ_after_max;
}
 
int abs_T(int a){
    return abs(a);
}
 
float abs_T(float a){
    return (a >= 0)? a : -a;
}
 
void Sort_arr(int *arr, size_t size)  //функция сортировка по убыванию
    {
        for(size_t i=0;i<size;i++)
        for(size_t j=size-1;j>i;j--)
          if (abs_T(arr[j-1])<abs_T(arr[j]))
           {
              int x=arr[j-1];
              arr[j-1]=arr[j];
              arr[j]=x;
           }
    }
 
void Sort_arr(float *arr, size_t size)  //функция сортировка по убыванию
    {
        for(size_t i=0;i<size;i++)
        for(size_t j=size-1;j>i;j--)
          if (abs_T(arr[j-1])<abs_T(arr[j]))
           {
              float x=arr[j-1];
              arr[j-1]=arr[j];
              arr[j]=x;
           }
    }
 
int main(){
 
const int n = 6;
int source_stat_arr[n] = {
        12, 123,   24, 112, -101, 55
    };
cout<<"source arrays"<<endl;
for(int i = 0; i < n; ++i)cout<<source_stat_arr[i]<<" ";
cout<<endl<<endl;
float *source_dyn_arr = new float[n];
for(int i = 0; i < n; ++i)source_dyn_arr[i] = source_stat_arr[i]/10.0f;//один из другого /10 
for(int i = 0; i < n; ++i)cout<<source_dyn_arr[i]<<" ";
cout<<endl<<endl;
 
cout<<"between 15...112 and 1,5...11.2"<<endl;
cout<<number_within_the_limmmits(source_stat_arr, n, 15, 112)<<endl;//числа 15 и 112 - пределы (от фонаря)
cout<<number_within_the_limmmits(source_dyn_arr, n, 1.5f, 11.2f)<<endl;//числа 15 и 112 - пределы (от фонаря)
cout<<"summs after max"<<endl;
cout<<summ_arr_after_max(source_stat_arr, n)<<endl;
cout<<summ_arr_after_max(source_dyn_arr, n)<<endl;
cout<<endl<<endl;
Sort_arr(source_stat_arr, n);
cout<<"sorted"<<endl;
for(int i = 0; i < n; ++i)cout<<source_stat_arr[i]<<" ";
cout<<endl<<endl;
Sort_arr(source_dyn_arr, n);
for(int i = 0; i < n; ++i)cout<<source_dyn_arr[i]<<" ";
cout<<endl<<endl;
 
cout<<endl<<endl;
system("pause");
return 0;
}
для double сами сделайте, если нужно.
 
Текущее время: 03:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru