Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
maxim12345
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 72
#1

Найти, сколько чисел на отрезке [x;y) начинаются с цифры 8 в шестнадцатеричной записи - C++

18.10.2013, 17:35. Просмотров 869. Ответов 26
Метки нет (Все метки)

Найти, сколько чисел на отрезке [x;y) начинаются с цифры 8 в шестнадцатеричной записи. Использовать s - прибавление 1, =, <, +, -, *, : - целочисленное деление, % - остаток от деления. Помогите, пожалуйста, написать эту программу на си++ с использованием только вот этих операций и, наверное, только библиотеки stdio.h
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.10.2013, 17:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти, сколько чисел на отрезке [x;y) начинаются с цифры 8 в шестнадцатеричной записи (C++):

Найти сколько чисел на отрезке [x;y] начинаются с цифры 8 в шестнадцатеричной записи. - C++
Написать программу метками. Найти сколько чисел на отрезке начинаются с цифры 8 в шестнадцатеричной записи. использовать...

Найти сколько чисел на отрезке [x;y] начинаются с цифры 8 в шестнадцатеричной записи - C++
Написать программу метками. Найти сколько чисел на отрезке начинаются с цифры 8 в шестнадцатеричной записи. использовать s-прибавление...

Найти сколько чисел на отрезке x; y начинаются с цифры 8 в шестнадцатеричной записи - C++
Ребят, у меня вопрос! зависит ли от того, в какой системе первоначально даны х и у найти сколько чисел на отрезке x;y начинаются с...

В массиве из целых чисел найти среднее арифметическое тех чисел, которые начинаются с цифры 5 - C++
В массиве из целых чисел найти среднее арифметическое тех чисел, которые начинаются с цифры 5. Сап, форумчане.

создал прогу, которая должна каждый раз рандомно записывать числа в массив и находить сколько чисел есть которые начинаются с цифры заданной пользоват - C++
В общем создал прогу, которая должна каждый раз рандомно записывать числа в массив и находить сколько чисел есть которые начинаются с цифры...

найти количество чисел на отрезке которые нацело делятся на x, и содержат цифры только из набора S - C++
Вам даются три числа x, L, R, необходимо найти количество чисел на отрезке которые нацело делятся на x, и содержат цифры только из набора...

26
Qwertiy
821 / 629 / 75
Регистрация: 20.08.2013
Сообщений: 2,524
18.10.2013, 18:52 #16
Цитата Сообщение от Folko Посмотреть сообщение
Не привыкайте ...
И вот такое писать тоже привыкать не надо:
Цитата Сообщение от Folko Посмотреть сообщение
C++
1
2
if (numb == 8) return true;
else return false;


Цитата Сообщение от maxim12345 Посмотреть сообщение
а можете тем не менее написать ее наподобие проги, что я скинул, пожалуйста?
Так и написано.

Цитата Сообщение от maxim12345 Посмотреть сообщение
я не понимаю, что такое res, unsigned... сори за тупость((
unsigned - это тот же int, только беззнаковый.
res - имя переменной.
2
maxim12345
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 72
18.10.2013, 19:01  [ТС] #17
q>>=4 а вот это что такое?
0
Qwertiy
821 / 629 / 75
Регистрация: 20.08.2013
Сообщений: 2,524
18.10.2013, 19:04 #18
Цитата Сообщение от maxim12345 Посмотреть сообщение
q>>=4 а вот это что такое?
Битовый сдвиг. Я же написал, что можно заменить на q/=16.
1
Max Dark
шКодер самоучка
1849 / 1649 / 603
Регистрация: 09.10.2013
Сообщений: 3,678
Записей в блоге: 6
Завершенные тесты: 2
18.10.2013, 19:12 #19
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
 
int main(void) {
    int n1, n2, count;
    int x,y;
    scanf("%d",&x);
    scanf("%d",&y);
    count = 0;
    n1 = x/16;
    n1 = n1*16 + 8;
    n2 = (y-1)/16;
    n2 = n2*16+8;
    if(n1<x)  n1+=16;
    if(n2>=y) n2-=16;
    if(n2>=n1)
        count = (n2-n1)/16;
    printf("n1 = %d, ",n1);
    printf("n2 = %d, ",n2);
    printf("count = %d\n",count);
    return 0;
}
Решение без циклов
1
maxim12345
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 72
18.10.2013, 19:24  [ТС] #20
C++
1
2
3
4
5
6
7
8
9
10
Alg Add; 
arg x, y; 
u = x; 
v = 0; 
while v < y do 
u = succ(u); 
v = succ(v); 
end;
Add = u; 
end;
а можете написать эту прогу на таком языке, на котором написана вот эта? и, кстати, как вообще он называется?) succ - это прибавление 1
0
Max Dark
шКодер самоучка
1849 / 1649 / 603
Регистрация: 09.10.2013
Сообщений: 3,678
Записей в блоге: 6
Завершенные тесты: 2
18.10.2013, 19:27 #21
строку 16 замените на
C++
1
       count = (n2-n1)/16 + 1;
Иначе не так считает
1
Qwertiy
821 / 629 / 75
Регистрация: 20.08.2013
Сообщений: 2,524
18.10.2013, 19:28 #22
Цитата Сообщение от Cra3y Посмотреть сообщение
Решение без циклов
Неверно.
x=0x75, y=0x994 - должно быть 272, а у тебя 145.
http://codepad.org/N9R2vOv3

Добавлено через 27 секунд
Цитата Сообщение от Cra3y Посмотреть сообщение
count = (n2-n1)/16 + 1;
Всё равно неверно.
1
maxim12345
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 72
18.10.2013, 19:54  [ТС] #23
А можете, пожалуйста, написать эту прогу на том языке, который я скинул? Пожалуйста.

Добавлено через 11 минут
Я ее написал, так не так? если не так то как правильно? (уже на своем языке написал)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Alg P;
arg x,y;
   P=0;
    while x<y do
      k=x;
      while 16<k do
        k=k\16;
      end;
      if k%16=8 do
        i=succ(i)
      end;
    end;
   P=i;   
end;
0
Qwertiy
821 / 629 / 75
Регистрация: 20.08.2013
Сообщений: 2,524
18.10.2013, 20:02 #24
Цитата Сообщение от maxim12345 Посмотреть сообщение
while 16<k do
Неверно, но на ответ не повлияет...

Цитата Сообщение от maxim12345 Посмотреть сообщение
Я ее написал, так не так?
А ты хотя бы скажи на чём это...
1
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
18.10.2013, 20:04 #25
Qwertiy, я вот тоже ему такой вопрос задал... может он свой язык создал уже?!
1
Qwertiy
821 / 629 / 75
Регистрация: 20.08.2013
Сообщений: 2,524
18.10.2013, 20:06 #26
Цитата Сообщение от maxim12345
этот язык мы на теоретических основа информатики изучаем, типа простой примитивный он. можешь посмотреть, так ли написана эта программа и при случае подправить ее?
Я же сказал, правдоподобно... Баги с костылями вроде на ответ не влияют.
1
maxim12345
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 72
18.10.2013, 20:06  [ТС] #27
Это у нас в универе профессор по ходу такой язык придумал, этот язык просто примитивный якобы, на нем типа все просто писать, а скомпилировать на этом языке только в уме можно что-то, ужас в общем(( гляньте, плиз, так или не я эту прогу написал?
0
18.10.2013, 20:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.10.2013, 20:06
Привет! Вот еще темы с ответами:

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

Дерево отрезков. Поиск суммы чисел на отрезке массива. Изменение всех чисел на отрезке массива - C++
Добрый день, помогите пож-та решить задачу на с++.И если возможно ,то с объяснением.

Сколько есть шестизначных чисел, в записи которых цифры 1 и 2 встречаются по два раза, а цифры 3 и 4 – по одно - Комбинаторика
Сколько есть шестизначных чисел, в записи которых цифры 1 и 2 встречаются по два раза, а цифры 3 и 4 – по одному разу? Помогите пожалуйста!

Найти, сколько простых чисел находятся на отрезке - C (СИ)
Вариант №1 Ввести два натуральных числа. Найти, сколько простых чисел находятся на отрезке между ними. Stack2, обращаю ваше внимание...


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

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

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