Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
1 / 1 / 2
Регистрация: 23.09.2012
Сообщений: 91
1

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

23.09.2012, 16:45. Показов 2400. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
помогите плиз. очень надо написать эту программу

Написать прогу которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar) ещё указать размер в байтах
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.09.2012, 16:45
Ответы с готовыми решениями:

Написать прогу, которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar), ещё указать размер в байтах
Программа должна содержать функцию printf. Без функции std::count и т.п.

написать, прогу которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar), ещё указать размер в байтах
Написать желательно простейшим языком(без применения каких-то очень навороченных функций)....

написать прогу, которая подсчитывает макс. и мин. значения переменных (int, shorting, longint, uint, char, uchar), ещё указать размер в байтах
помогите плиз. желательно, чтобы программа была написана максимально простым способом

Вычислить значения функции в указанных точках и найти максимальные и минимальные из этих значений
Собственно задача есть. Писал такое: // ConsoleApplication2.cpp: определяет точку входа для...

10
79 / 79 / 8
Регистрация: 14.10.2009
Сообщений: 121
23.09.2012, 16:51 2
Все максимальные и минимальные значения целых типов объявлены в файле limits.h
1
1 / 1 / 2
Регистрация: 23.09.2012
Сообщений: 91
23.09.2012, 16:53  [ТС] 3
где он находится?
0
Эксперт С++
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
23.09.2012, 17:06 4
На примере char:
C++
1
2
const unsigned char min_uchar = 0, max_uchar = unsigned char(-1);
const char max_char = max_uchar >> 1, min_char = max_char + 1;
Работает на процессорах, равнодушно относящихся к переполнению и с двоичной арифметикой, основанной на принципе "дополнения до 2". В частности, на x86 и x64.
1
1 / 1 / 2
Регистрация: 23.09.2012
Сообщений: 91
23.09.2012, 17:15  [ТС] 5
нельзя использовать из переменных max int, min int и т.д.)

Добавлено через 6 минут
Nick Alte,нельзя использовать из переменных max int, min int и т.д.)
0
Эксперт С++
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
23.09.2012, 17:20 6
Глядим внимательно - ничего такого не используется. Просто названия похожие. Можно по вкусу называть в другой конвенции или даже на суржике:
C++
1
2
const unsigned char NaimenshijUchar = 0, NaibolshijUchar = unsigned char(-1);
const char NaibolshijChar = NaibolshijUchar >> 1, NaimenshijChar = NaibolshijChar + 1;
1
1 / 1 / 2
Регистрация: 23.09.2012
Сообщений: 91
23.09.2012, 17:31  [ТС] 7
написал программу:
#include <stdio.h>
#include <limits.h>

int main (void) {
const unsigned char min_uchar = 0, max_uchar = unsigned char(-1);
const char max_char = max_uchar >> 1, min_char = max_char + 1;
return 0;
}
Что неправильно?

Добавлено через 4 минуты
Nick Alte, написал программу:
#include <stdio.h>
#include <limits.h>

int main (void) {
const unsigned char min_uchar = 0, max_uchar = unsigned char(-1);
const char max_char = max_uchar >> 1, min_char = max_char + 1;
return 0;
}
Что неправильно?
0
Эксперт С++
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
23.09.2012, 17:32 8
Правильно вот так
0
2855 / 2002 / 988
Регистрация: 21.12.2010
Сообщений: 3,707
Записей в блоге: 10
23.09.2012, 17:59 9
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
#include <iostream>
#include <limits>
 
typedef long long ll;
 
template<typename T>
void IntegerLimits(T)
{
    if(std::numeric_limits<T>::is_integer)
    {
        T max, min;
        if(std::numeric_limits<T>::is_signed)
            min = 1 << (sizeof(T) * 8 - 1);
        else
            min = 0;
        max = ~min;
        std::cout << "min:\n" << ll(min) << '\n' << ll(std::numeric_limits<T>::min()) << std::endl;
        std::cout << "\nmax:\n" << ll(max) << '\n' <<ll(std::numeric_limits<T>::max()) << std::endl;
    }
}
 
int main()
{
    bool n(0);
    IntegerLimits(n);
    return 0;
}
0
2554 / 1319 / 178
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
23.09.2012, 19:02 10
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
#include <iostream>
#include <limits>
 
#include <boost/mpl/for_each.hpp>
#include <boost/mpl/vector.hpp>
 
struct printer
{
    template<class T>
    void operator() (const T&) const
    {
        std::cout << typeid(T).name() << ": " << std::endl;
        std::cout << "    min = " << std::numeric_limits<T>::min() << std::endl;
        std::cout << "    max = " << std::numeric_limits<T>::max() << std::endl;
        std::cout << "    size = " << sizeof(T) << std::endl << std::endl;
    }
};
 
int main()
{
    using types = boost::mpl::vector<int, long long, short>::type;
    boost::mpl::for_each<types>(printer());
    return 0;
}
0
1 / 1 / 2
Регистрация: 23.09.2012
Сообщений: 91
23.09.2012, 20:39  [ТС] 11
А можно переписать её так, чтобы вместо std::count была бы функция printf?

Добавлено через 3 минуты
А можно эту программу переписать так, чтобы вместо функции std::count была бы функция printf?
0
23.09.2012, 20:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.09.2012, 20:39
Помогаю со студенческими работами здесь

Размер переменных в байтах
Доброго времени суток! Не могу разобраться в переводах из шестнадцатиричной системы счисления в...

Минимальные и максимальные значения
Требуется помощь, я никак не могу создать данную программу, вечно выходят ошибки или она не...

Минимальные и максимальные значения в массиве
Люди, я начинающий пользователь С++. Помогите с задачей: Задан вектор x. Найти наименьший из...

Вывести максимальные и минимальные значения матрицы
Кто может помочь C++ 1. Ввести матрицу А. Вывести максимальные элементы по строкам и столбцам. ...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru