С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Shadrigan
0 / 0 / 0
Регистрация: 16.06.2013
Сообщений: 8
1

Датчиком случайных чисел сгенерируйте два натуральных числа в интервале от 10 до 90

17.09.2013, 11:19. Просмотров 1603. Ответов 24
Метки нет (Все метки)

Помигите пожалуйста! Очень нужно решение, если можно с пояснениями.

Датчиком случайных чисел сгенерируйте два натуральных числа в интервале от 10 до 90. Меньшее из них замените средним арифметическим, а большее - средним геометрическим этих чисел.
Тест. Числа 36; 25.
Результат. 30; 30.5.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2013, 11:19
Ответы с готовыми решениями:

Датчиком случайных чисел сгенерируйте случайное натуральное число в интервале от 100 до 900. Определите большую цифру полученного числа
Помигите пожалуйста! Очень нужно решение, если можно с пояснениями. Датчиком...

Дан массив a(n), сформированный датчиком случайных чисел на интервале (-10, 170). Из элементов массива А
Дан массив А(N), сформированный датчиком случайных чисел на интервале (-10,...

В заданном интервале натуральных чисел определить все простые числа
из заданного интервала натуральных чисел определить все простые числа

Помогите написать программу с датчиком случайных чисел)
Разработать программу для выполнения над матрицей размером 5х5 операций в...

Даны два натуральных числа a, b. Найти разность и произведение суммы цифр этих чисел
Даны два натуральных числа a, b. Найти разность и произведение суммы цифр этих...

24
lipnev
60 / 60 / 7
Регистрация: 14.09.2013
Сообщений: 145
17.09.2013, 11:47 2
Решение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
#include<cstdlib>
#include<ctime>
#include<math.h>
 
using namespace std;
 
int main()
{
    float a, b;
    srand(time(NULL));
    a=rand() % 80 + 10;
    b=rand() % 80 + 10;
    cout <<"Genereated numbers: " << a << " " << b << endl;
    cout << (a+b) / 2 << " ";
    cout << sqrt(a*b);
    cin.get();
    return 0;
}
1
alsav22
5445 / 4840 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 11:58 3
lipnev, и где здесь это?
Цитата Сообщение от Shadrigan Посмотреть сообщение
Меньшее из них замените средним арифметическим, а большее - средним геометрическим этих чисел.
1
lipnev
60 / 60 / 7
Регистрация: 14.09.2013
Сообщений: 145
17.09.2013, 12:06 4
Среднее арифметическое
C++
1
(a+b) / 2
Среднее геометрическое
C++
1
sqrt(a*b)
0
alsav22
5445 / 4840 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 12:16 5
Задание не вывести среднее арифметическое, среднее геометрическое, а заменить, сгенерированные числа, средним арифметическим, средним геометрическим этих чисел. Какое чем, зависит от того, какое больше.
1
lipnev
60 / 60 / 7
Регистрация: 14.09.2013
Сообщений: 145
17.09.2013, 12:29 6
Тогда так
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>
#include<cstdlib>
#include<ctime>
#include<math.h>
 
using namespace std;
 
int main()
{
    float a, b;
    float SrArif, SrGeom;
    srand(time(NULL));
    a=rand() % 80 + 10;
    b=rand() % 80 + 10;
    cout <<"Genereated numbers: a=" << a << " b=" << b << endl;
 
    SrArif=(a+b) / 2;
    SrGeom=sqrt(a*b);
    cout << "SrArif="<< SrArif << " SrGeom=" << SrGeom << endl;;
    if (a<b){
        a=SrArif;
        b=SrGeom;
    }
    else{
        a=SrGeom;
        b=SrArif;
    }
    cout << "a="<< a << " b=" << b;
    cin.get();
    return 0;
}
Спасибо Alsav22. Невнимательно прочитал условие.
1
SeeT
53 / 23 / 3
Регистрация: 12.10.2012
Сообщений: 132
Записей в блоге: 1
17.09.2013, 13:56 7
а переменным a и b обязательно флоат указывать? Можно интежер?
0
alsav22
5445 / 4840 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 14:00 8
Цитата Сообщение от SeeT Посмотреть сообщение
а переменным a и b обязательно флоат указывать? Можно интежер?
А попробовать и посмотреть?
0
lipnev
60 / 60 / 7
Регистрация: 14.09.2013
Сообщений: 145
17.09.2013, 14:04 9
Если указать int, то среднее арифметическое будет целым выводится, то есть не будет выводиться 0,5, поэтому float.
1
Tulosba
:)
Эксперт С++
4750 / 3244 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
17.09.2013, 14:06 10
Цитата Сообщение от lipnev Посмотреть сообщение
Если указать int, то среднее арифметическое будет целым выводится
Делите на 2.0 и будет как надо.
0
lipnev
60 / 60 / 7
Регистрация: 14.09.2013
Сообщений: 145
17.09.2013, 14:10 11
Цитата Сообщение от Tulosba Посмотреть сообщение
Делите на 2.0 и будет как надо.
Проверил. При
C++
1
int a, b;
и делении на 2.0 выдаёт только целые числа, даже если результат сложения нечётное число.

Нет. Всё таки выдаёт правильно. Был не прав.
0
alsav22
5445 / 4840 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 14:12 12
Цитата Сообщение от Tulosba Посмотреть сообщение
Делите на 2.0 и будет как надо.
sqrt() c int не будет работать.
0
Tulosba
:)
Эксперт С++
4750 / 3244 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
17.09.2013, 14:14 13
Цитата Сообщение от lipnev Посмотреть сообщение
Проверил
http://ideone.com/6F2Bbz

Добавлено через 53 секунды
Цитата Сообщение от alsav22 Посмотреть сообщение
sqrt() c int не будет работать.
В каком плане?
0
lipnev
60 / 60 / 7
Регистрация: 14.09.2013
Сообщений: 145
17.09.2013, 14:21 14
alsav22, Tulosba, всё работает с int и корень тоже вычисляется.
0
SeeT
53 / 23 / 3
Регистрация: 12.10.2012
Сообщений: 132
Записей в блоге: 1
17.09.2013, 14:23 15
lipnev, точно)) из головы вылетело))
0
alsav22
5445 / 4840 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 14:28 16
Цитата Сообщение от Tulosba Посмотреть сообщение
В каком плане?
В таком.
0
Миниатюры
Датчиком случайных чисел сгенерируйте два натуральных числа в интервале от 10 до 90  
Tulosba
:)
Эксперт С++
4750 / 3244 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
17.09.2013, 14:48 17
alsav22, это проблема студии. Начиная с C++11 есть перегрузка для int'а. Хотя, смотрю, gcc и до C++11 такой проблемой не страдает. http://ideone.com/VyqZug
0
alsav22
5445 / 4840 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
17.09.2013, 15:02 18
Цитата Сообщение от Tulosba Посмотреть сообщение
Начиная с C++11 есть перегрузка для int'а.
Вот именно, что начиная...
Цитата Сообщение от Tulosba Посмотреть сообщение
Хотя, смотрю, gcc и до C++11 такой проблемой не страдает.
Значит не стандарт: http://www.cplusplus.com/reference/cmath/sqrt/
0
Tulosba
:)
Эксперт С++
4750 / 3244 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
17.09.2013, 15:46 19
Цитата Сообщение от alsav22 Посмотреть сообщение
Вот именно, что начиная...
Ну, что же нам теперь в лаптях всю жизнь ходить?
Цитата Сообщение от alsav22 Посмотреть сообщение
Значит не стандарт
Ну, я бы не сказал, что в данном случае это плохо. Так как наоборот прикрыли дырку в стандарте.
0
alsav22
17.09.2013, 15:53     Датчиком случайных чисел сгенерируйте два натуральных числа в интервале от 10 до 90
  #20

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
Ну, я бы не сказал, что в данном случае это плохо. Так как наоборот прикрыли дырку в стандарте.
А я и не говорил: плохо это или хорошо. Не стандарт, он и есть не стандарт. Остальное - от лукавого...

0
17.09.2013, 15:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.09.2013, 15:53
Привет! Вот еще темы с ответами:

Даны два натуральных числа. Определить сколько чисел на отрезке между ними являются факториалами
Даны два натуральных числа. Определить сколько чисел на отрезке между ними...

Написать программу, которая вводит с клавиатуры два натуральных числа и выполняет логическое умножение и сложение этих чисел
1. Написать программу, которая вводит с клавиатуры два натуральных числа и...

Найти количество почти простых чисел в заданном интервале натуральных чисел.
Натуральное число называется почти простым, если оно не простое и имеет только...


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

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

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