Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Kosor
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 35
1

Найти все числа из отрезка [x, y], троичная запись которых заканчивается на 1

15.12.2012, 21:29. Просмотров 341. Ответов 1
Метки нет (Все метки)

Нужно найти все числа из отрезка [x, y], троичная запись которых заканчивается на 1. Х, У вводятся с клавиатуры и являются десятичными.

Вот моя программа, но она не работает:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
int main(){
 int x,y;
 scanf("%d", &x);
 scanf("%d", &y);
 int t,i;
 for (i=x; i<=y; i++){
   while (i!=0){
   t=i%3;
   i=i/3;
   }
   if (t=1) printf ("iskomoe=", i);
 }
 return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2012, 21:29
Ответы с готовыми решениями:

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

Найти все натуральные числа (не больше N), десятичная запись которых - строго возрастающая последовательность цифр
Прошу помощи с этим заданием, заранее благодарна : Найти все натуральные числа,...

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

Напечатать все числа, не превосходящие n, двоичная запись которых является симметричной последовательностью
Определить функции, переводящую число в двоичную систему счисления и...

Найти числа у которых все делители простые
Номера &quot;XX&quot; Мы говорим, что целое число &quot;XX&quot;, если все его делителей...

1
sumthief
2 / 2 / 0
Регистрация: 08.12.2012
Сообщений: 15
15.12.2012, 22:10 2
У вас здесь 2 ошибки:
1)while (i!=0){
t=i%3;
i=i/3;
}
Этот цикл будет разбивать число на цифры. Но нам то это не ведь не нужно?(Нам нужна последняя цифра - следовательно можно обойтись просто кодом, а ваш код будет проверять первую цифру):
C++
1
2
3
4
for(int i=x;i<=y;i++){
int t;
t=i%3;
}
2) Типичная ошибка - операция присваивания вместо сравнения:
Должно быть
if (t==1) printf("iskomoe=%d",i);

В итоге должно получиться что-то типа:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
int main(){
 int x,y;
 scanf("%d", &x);
 scanf("%d", &y);
 int i;
 for (i=x; i<=y; i++){
   int t=i%3;
   if (t==1) printf ("iskomoe=%d", i);
 }
 return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2012, 22:10

Среди чисел 1, 2, . , n найти все такие, запись которых совпадает с последними цифрами записи их квадрата
Помогите, пожалуйста, разобраться с задачей: Задано натуральное двухзначное...

Найти и вывести все числа в интервале от 1 до N–1, у которых произведение всех цифр совпадает с произведением цифр данного числа
Дано натуральное число N. Найти и вывести все числа в интервале от 1 до N–1, у...

Найти все m-значные числа, делящиеся на n, у которых цифры возрастают
Найти все m-значные числа, делящиеся на n, у которых цифры возрастают.


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

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

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