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

Выполнить указанные преобразования типов, и вывести полученные результаты. Найти ошибки в коде - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Cоздать динамическую структуру, где последний элемент связан с адресом следующего в новом списке http://www.cyberforum.ru/cpp-beginners/thread1131724.html
Привет. Дали такое задание создать динамическую структуру, где последний элемент связан с адресом следующего в новом списке. Код я написал, но не знаю правильный ли он... #include <stdio.h> #include <string.h> #include <conio.h> { struct MUZIKA{char nazavanie; char strana; int kolichestvo; int god; MUZIKA *next}; MUZIJA *first, //указатель начал списка *last, //указатель на...
C++ Создать параметризированный класс Stack Помогите пожалуйста Создать параметризированный класс Stack. Класс должен содержать конструкторы, деструктор, а также функции push, pop, empty, full и операторы ввода/вывода. Для выделения памяти использовать оператор new. http://www.cyberforum.ru/cpp-beginners/thread1131722.html
Ввести натуральное число n. Среди чисел 1,.,n найти все такие числа, запись которых совпадает с последними цифрами C++
Ввести натуральное число n. Среди чисел 1,...,n найти все такие числа, запись которых совпадает с последними цифрами записи их квадрата (например, 6^2=36, 25^2=625 и т.д. ). Помогите решить, заранее спасибо!
C++ Функция не обнуляет
Функция обнуляет только 1 число и 2е пишет -3443646 что-то типо того) Помогите что не так , где-то с функцией zero скорее всего void zero(int *x){ *x=0; } void Del(int *arr,int n){ int m=0;int k; cout<<"Введите k "<<endl; cin>>k; for(int i=0;i<n;i++){
C++ Ввести несколько структур типа «Зачетка студента» с полями. Скомпилировать код http://www.cyberforum.ru/cpp-beginners/thread1131697.html
есть задание - Ввести несколько структур типа «Зачетка студента» с полями {Фамилия студента Номер зачетки Массив из 4 оценок } Написать программу, выполняющую следующие действия: Сортировка структур по фамилии или среднему баллу Удаление всех зачеток троечников написал код но нет возможности проверить
C++ Задана матрица F(2n, m). Попарно поменять местами её строчки. Первую с второй, третью с четвёртой, и т. д Задана матрица F(2n, m). Попарно поменять местами её строчки. Первую с второй, третью с четвёртой, и т. д. подробнее

Показать сообщение отдельно
shymaxer
0 / 0 / 0
Регистрация: 27.03.2014
Сообщений: 2
27.03.2014, 22:45     Выполнить указанные преобразования типов, и вывести полученные результаты. Найти ошибки в коде
Здравствуйте. Есть такое задание:

Задание
1. Для типов данных char, short, int, long с квалификаторами signed, unsigned составить
программу, которая, используя операцию присваивания, выполняет указанные преобразования
типов, и вывести полученные результаты.
signed char -> signed short int -> signed int -> signed long
unsigned char -> unsigned short int -> unsigned int -> unsigned long
unsigned long -> unsigned int -> unsigned short int -> unsigned char
signed long -> signed int -> signed short int -> signed char
Преобразования должны быть выполнены для произвольного, максимального (CHAR_MAX,
UCHAR_MAX, ULONG_MAX, LONG_MAX) и минимального (CHAR_MIN, LONG_MIN) значений
переменной.

2. Выполнить указанные вычисления и распечатать полученные результаты.
signed int MAX -> signed int MAX+1
unsigned int MAX -> unsigned int MAX+1
signed int MIN -> signed int MIN-1
unsigned int MIN -> unsigned int MIN-1

Вроде всё предельно просто. Но вот на деле у меня вот так
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
#include <iostream>
#include "stdio.h"
#include "limits.h"
 
int main () {
unsigned char a;
signed char b;
unsigned short int c;
signed short int d;
unsigned int e,um,um1;
signed int f,m,m1;
unsigned long g;
signed long h;
 
b=CHAR_MAX;
d=b; //signed char - signed short int
printf("signed char= %d \n signed short int= %d \n ",b,d);
f=d; //signed short int - signed int
printf("signed int= %d \n ",f);
h=f; //signed int - signed long
printf("signed long= %ld \n",h);
printf ("\n");
 
a=UCHAR_MAX;
c=a; //unsigned char - unsigned short int
printf("unsig char= %u \n unsig short int= %u \n ",a,c);
e=c; //signed short int - unsigned int
printf("unsig int= %u \n ",e);
g=e; //unsigned int - unsigned long
printf("unsig long= %lu \n",g);
printf ("\n");
 
g=ULONG_MAX;
e=g; //unsigned long - unsigned int
printf("unsig long= %lu \n unsig int= %u \n ",g,e);
c=e; //unsigned int - unsigned short int
printf("unsig short int= %hu \n ",c);
a=c; //unsigned short int - unsigned char
printf("unsig char= %u \n",a);
printf ("\n");
 
h=LONG_MAX;
f=h; //signed long - signed int
printf("signed long= %ld \n signed int= %d \n ",h,f);
d=f; //signed int - signed short int
printf("signed short int= %hd \n ",d);
b=d; //signed short int - signed char
printf("signed char=%d",b);
printf ("\n\n\n");
 
b=CHAR_MIN;
d=b; //signed char - signed short int
printf("signed char= %d, \n signed short int= %d \n ",b,d);
f=d; //signed short int - signed int
printf("signed int= %d \n ",f);
h=f; //signed int - signed long
printf("signed long= %ld \n",h);
printf ("\n");
 
 
a=CHAR_MIN;
c=a; //unsigned char - unsigned short int
printf("unsig char= %u \n unsig short int= %u \n ",a,c);
e=c; //unsigned short int - unsigned int
printf("unsig int= %u \n ",e);
g=e; //unsigned int - unsigned long
printf("unsig long= %lu \n",g);
printf ("\n");
 
g=LONG_MIN;
e=g; //unsigned long - unsigned int
printf("unsig long= %lu \n unsig int= %u \n ",g,e);
c=e; //unsigned int - unsigned short int
printf("unsig short int= %u \n ",c);
a=c; //unsigned short int - unsigned char
printf("unsig char= %u \n",a);
printf ("\n");
 
h=LONG_MIN;
f=h; //signed long - signed int
printf("signed long= %ld \n signed int= %d \n ",h,f);
d=f; //signed int - signed short int
printf("signed short int= %d \n ",d);
b=d; //signed short int - signed char
printf("signed char= %d \n",b);
printf("-------------------------------------"); //Конец первой части задания
m=INT_MAX;
m1=m+1;
printf("\n signed int MAX (%d) -> signed int MAX+1: %d ",m,m1);
 
um=UINT_MAX;
um1=um+1;
printf("\n unsigned int MAX (%u) -> unsigned int MAX+1: %u ",um,um1);
 
m=INT_MIN;
m1=m-1;
printf("\n signed int MIN (%d) -> signed int MIN-1: %d ",m,m1);
 
um=INT_MIN;
um1=um-1;
printf("\n unsigned int MIN (%u) -> unsigned int MIN-1: %u ",um,um1);
return 0;
}
Результат: http://codepad.org/ZSYKSAvs
Собственно проблема в 0 и -1, там где их не должно быть... Прошу подсказать ошибку.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru