Р. А. Юсупов, С. Н. Искандарова, Ш. Мирзанова C/C++ тилида топшириқ ва масалалар Самарқанд – 2013 йил


Download 1.35 Mb.
bet70/105
Sana13.04.2023
Hajmi1.35 Mb.
#1353566
TuriУчебник
1   ...   66   67   68   69   70   71   72   73   ...   105
Bog'liq
CPP masalalari1


Часть IL Решения 149
char bin[16]; // изображение двоичного числа
long int dec; // десятичное число
int i; // номер разряда двоичного числа
int v; // вес i-го разряда двоичного числа
printf("Введите восьмиразрядное двоичное число ");
printf("H нажмите ");
printf("->");
scanf("%s", &bin);
dec = 0;
V = 1; // вес младшего (0-го) разряда двоичного числа
for ( i *= strlen(bin) -1; i >= 0; i—)
{
if ( bin[i] =='!')
dec += v;
V *= 2; // вес следующего разряда
}
printf("Двоичному числу %s", bin);
printf("соответствует десятичное %d", dec);
printf ("\пДля завершения ная^^^ите ") ;
getch();
Задача 178
// преобразует шестнадцатеричное число в десятичное
// разобраться с переполнением!
#include
#include
#include "string.h"
void mainO
{
char St[5]; // шестнадцатеричное число
unsigned int dec;// десятичное число
int v; // вес разряда шестнадцатеричного числа
int err = 0; // err = 1 - в строке недопустимый символ
int i;
150 С/С+-1' в задачах и примерах
printf("Введите шестнадцатеричное ");
printf("(не более 4-х знаков) число\п");
printf("-> ");
scanf("%s",&st);
// преобразуем введенную строку к верхнему регистру
strupr(st);
dec = 0;
V = 1; // вес младшего разряда шестнадцатеричного
// числа
for ( i = strlen(st) -1; i >= 0; i—)
{
//printf("\n%d\n",v);
if (st[i] >= '0' && st[i] <= '9M
dec +- V * (st[i]- 48); // (int)'0'=48, (int)»l'=49
// и т.д.
•lee
if (st[i] >= 'A' && st[i] <= 'FM
// (int)'A'=65, (int)'B'=66 и т.д.
// A обозначает 10, В - 11 и т.д.
dec += V * (st[i3- 55);
mlsm // недопустимый символ
{ err = 1;
break; }
V *= 16; // вес следующего разряда
}
if ( !err ) {
printf("Шестнадцатеричному числу %s ", st);
printf("соответствует десятичное %u\n", dec);
}
else {
printf ("Строка %s не яъляечося ", st);
printf("шестнадцатеричным числомХп");
}
printf("\пДля завершения нажмите ");
getch();

Download 1.35 Mb.

Do'stlaringiz bilan baham:
1   ...   66   67   68   69   70   71   72   73   ...   105




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling