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

Уменьшить число в 2 раза - C++

Восстановить пароль Регистрация
 
наташа ч
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 23
28.01.2011, 14:29     Уменьшить число в 2 раза #1
Дано натуральное число N. Уменьшить число в 2 раза (деление нацело).
Проверить, изменилось ли после уменьшения количество разрядов в
числе (функцией оформить определение количества разрядов числа).

Помогите решить
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2011, 14:29     Уменьшить число в 2 раза
Посмотрите здесь:

Из элементов массива А сформировать массив С того же размера по правилу C++
C++ Неотрицательные элементы массива уменьшить в 3 раза, остальные — возвести в квадрат
C++ Уменьшить первое введённое число в два раза, если оно больше второго по абсолютной величине
Ввести целое двузначное число, 2ю цифру числа увеличить в 2 раза, 1ю - уменьшить в 2 раза C++
C++ Все четные элементы, стоящие левее минимального, уменьшить в 2 раза
C++ Все нулевые элементы матрицы увеличить на 5, ненулевые уменьшить в 2 раза
C++ Найти наибольшее число в массиве, которое повторяется по крайней мере 2 раза, но не более чем 3 раза
Все элементы заданного одномерного массива уменьшить в 2 раза C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mogul-kan
23 / 23 / 2
Регистрация: 24.04.2010
Сообщений: 220
28.01.2011, 14:51     Уменьшить число в 2 раза #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Вот накодил:
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
#include <stdio.h>
#include <conio.h>
 
int razr(int razr_n)//flag-количество разрядов в числе n
{
int  ost;
int flag=0;
 
while (1)
{ost=razr_n%10;
razr_n=razr_n/10;
flag++;
    if (ost==0)break;}
    printf("\nRazriad v n->=%d", flag-1); 
    }
    
int razr_del(int razr_del)//flag-количество разрядов в числе del-деленное на два
{
int  ost;
int flag=0;
 
while (1)
{ost=razr_del%10;
razr_del=razr_del/10;
flag++;
    if (ost==0)break;}
    printf("\nRazriad delenia na dva=%d", flag-1); 
    }
 
 
main()
{
    int n;
int del;
printf("Enter n->");
scanf("%d", & n);
del=n/2;
printf("%d", del);
razr(n);
razr_del(del);
 
    getch();}
igorrr37
 Аватар для igorrr37
1594 / 1222 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
29.01.2011, 08:21     Уменьшить число в 2 раза #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
#include<sstream>
using namespace std;
 
int f(int n){
    stringstream ss;
    ss<<n;
    ss.seekg(0, ios::end);
    return ss.tellg();
}
 
int main(){
    int n;
    cin>>n;
    int bef=f(n);
    int aft=f(n/2);
    cout<<bef<<"  "<<aft<<"\n";
    cout<<(bef>aft? "YES": "NO");
}
Yandex
Объявления
29.01.2011, 08:21     Уменьшить число в 2 раза
Ответ Создать тему
Опции темы

Текущее время: 15:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru