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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 45, средняя оценка - 4.87
Boginy
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 9
#1

Определите наибольший общий делитель чисел - C++

23.02.2010, 10:07. Просмотров 5735. Ответов 19
Метки нет (Все метки)

Привет,всем!!!Я учусь в колледже информатики и мы только начали изучать Си и нам дали электронную контрольную работу,но когда я отправляю свои решения он говорит,что решено не правильно,поэтому прошу у вас помощи ведь отправить надо сегодня до 6 часов вечера!За ранее спасибо и с праздником!!!
1) Дано трёхзначное число. В нём зачеркнули последнюю справа цифру и приписали ее в начало. Найти полученное число.
Входные данные:
Целое, трёхзначное число.
Выходные данные:
Одно целое число, являющееся решением данной задачи.
2)Дано натуральное число n. Найдите сумму его первой и последней цифры.
Входные данные:
Одно целое, число n, (n>=10).
Выходные данные:
Одно целое число, являющееся суммой двух цифр - первой и последней, для заданного числа n.
3)Даны три целых числа a , b и c (b>a,10>=a>99,10>b>=99,0>=c>=9). Найдите все целые числа из промежутка от a до b в десятичных записях которых есть цифра c.
Входные данные:
Три целых числа a , b и c, заданные в одной строке через пробел.
Выходные данные:
Все целые числа из промежутка от a до b в десятичных записях которых есть цифра c, в порядке возрастания, в одной строке через пробел. После последнего числа этой последовательности пробел ставится.
4)Даны два целых числа a и b (a>=b>=0). Определите наибольший общий делитель этих чисел.
Входные данные:
Два целых числа a и b, заданных в одной строке через пробел.
Выходные данные:
Одно целое число, являющееся наибольшим общим делителем чисел a и b.
5)Дано натуральное число n (n<100). Определить число способов выплаты суммы n руб. с помощью монет достоинством 1, 2, 5, 10 рублей.
Входные данные:
Целое число n.
Выходные данные:
Одно целое число, являющееся количеством способов выплаты суммы n руб. с помощью монет достоинством 1, 2, 5, 10 рублей.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2010, 10:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определите наибольший общий делитель чисел (C++):

Наибольший общий делитель 2х целых чисел - C++
Здравствуйте, помогите пожалуйста с прогой: Вычислить наибольший общий делитель 2х целых чисел введённых с клавиатуры #include...

Найти наибольший общий делитель чисел - C++
Найти наибольший общий делитель чисел M и N используя метод Эйлера: если M делится на N, то НОД (N, M) = N, иначе НОД (N, M) = НОД (M % N,...

Наибольший общий делитель двух натуральных чисел - C++
1) Найти наибольший общий делитель двух заданных натуральных чисел. 2)Правила :( не знаю как делать.

Найти наибольший общий делитель трех чисел - C++
заданы 3 числа найти их наибольший общий делитель

Найти наибольший общий делитель двух чисел - C++
Задание: найти наибольший общий делитель двух чисел. Сам код: #include &lt;iostream&gt; using namespace std; int main() { ...

НОД (наибольший общий делитель) n-го количества чисел - C++
Помогите, пожалуйста, написать программу на С++, которая бы находила НОД(наибольший общий делитель) n-го количества числа(n ввести с...

19
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
23.02.2010, 10:14 #2
Ты лучше приведи свои решения, и тебе скажут, что не так

Добавлено через 1 минуту
Цитата Сообщение от Boginy Посмотреть сообщение
(n&gt;=10)
вот это, к примеру, что значит?
0
Boginy
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 9
23.02.2010, 10:17  [ТС] #3
В данный момент сайт на котором мы пишем не работает.Первую я решила так:
C
1
2
3
4
5
6
7
8
9
10
11
#include<stdio.h>
int main()
{
int m;
scanf("%i",&m);
int n=m%10;
int a=m div 10;
int b=a+n*100;
pritf("\n b=%i",b);
return 0;
}
0
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
23.02.2010, 10:28 #4
Цитата Сообщение от Boginy Посмотреть сообщение
int a=m div 10;
А у тебя эту строчку вообще компилятор пропускает? В C/C++ операция div для целых чисел выполняется оператором /, т.е. эту строку нужно заменить на
C++
1
int a=m/10;
А так все вроде бы правильно

Добавлено через 3 минуты
И что значит "решено не правильно"? Им не нравится алгоритм решения, или программа выдает неверные результаты? Если последнее, то попробуй запустить программу в пошаговом режиме

Добавлено через 2 минуты

Не по теме:

кстати, в моем часовом поясе 6 часов вечера наступит через полчаса

0
Boginy
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 9
23.02.2010, 10:30  [ТС] #5
Я не знаю что именно он имеет в виду поскольку сама первый раз так контрольные решаю,но вроде бы он сразу проверяет и проверив меня написал неверно....

Добавлено через 1 минуту
Не по теме:
У меня сейчас только 13:30 дня)))
0
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
23.02.2010, 10:30 #6
upd, в 9 строке ошибка, вместо pritf нужно printf
0
Boginy
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 9
23.02.2010, 10:32  [ТС] #7
упс))
0
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
23.02.2010, 10:32 #8
Вот рабочий вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
#include<stdio.h>
int main()
{
    int m;
    scanf("%i",&m);
    int n=m%10;
    int a=m / 10;
    int b=a+n*100;
    printf("\n b=%i",b);
    return 0;
}
0
Boginy
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 9
23.02.2010, 10:34  [ТС] #9
сайт включили!все равно говорит неверно....
0
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
23.02.2010, 10:40 #10
Может я чего не понял?
К примеру, дано число 475, в результате должно получиться 574?
0
Boginy
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 9
23.02.2010, 10:42  [ТС] #11
(n&gt;=10) это n>=10

Добавлено через 2 минуты
все правильно ты понял....
0
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
23.02.2010, 10:46 #12
Цитата Сообщение от Boginy Посмотреть сообщение
Добавлено через 2 минуты
все правильно ты понял....
Странно, программа все считает правильно, см. здесь результат
0
Boginy
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 9
23.02.2010, 10:59  [ТС] #13
6)Даны два целых числа. Найти среднее арифметическое кубов этих чисел.
Входные данные:
Два целых числа, которые вводятся в одной строке через пробел.
Выходные данные:
Вещественное число, являющееся результатом решения задачи. Число должно иметь три разряда после десятичной точки.
7) Дано целое число k(3<=k<=450) и последовательность цифр 101102103...149150, в котором выписаны подряд все трехзначные числа от 101 до 150. Определить k-ю цифру, если известно, что k- число кратное трём.
Входные данные:
Целое число, определяющее k-ю позицию в последовательности 101102103...149150. Причём, это число кратно трём.
Выходные данные:
Целое число, являющееся k-й цифрой в последовательности 101102103...149150.

Добавлено через 3 минуты
в общем я отправила в таком виде.С другими поможешь?

Добавлено через 1 минуту
8) В старояпонском календаре был принят двенадцатилетний цикл. Годы внутри цикла носили названия животных: крысы,коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, петуха, собаки и свиньи. Напишите программу, которая по номеру года определяет его название в старояпонском календаре, если известно, что 1996 год был годом крысы.
Входные данные:
Целое число, определяющее номер года.
Выходные данные:
Одно из сообщений: RAT, COW, TIGER, HARE, DRAGON, SNAKE, HORSE, SHEEP, MONKEY, COCK, DOG, PIG , соответствующее названию года в старояпонском календаре. Сообщение выводится в одной строке заглавными латинскими буквами.

Добавлено через 1 минуту
9)Заданы координаты точки (x,y). Определить принадлежит ли точка данной фигуре.
Входные данные:
Два вещественных числа x и y, записанные в одной строке через пробел.
Выходные данные:
Сообщение YES, если точка принадлежит фигуре. И сообщение NO в противном случае. Сообщение выводится в одной строке заглавными латинскими буквами.

Добавлено через 4 минуты
как мне рисунок вставить?

Добавлено через 57 секунд
10)Определить является ли число A делителем числа B.
Входные данные:
Два целых числа A и B, записанные в одной строке через пробел.
Выходные данные:
Сообщение YES, если число A является делителем числа B. И сообщение NO в противном случае. Сообщение выводится в одной строке заглавными латинскими буквами.
0
ancara
0 / 0 / 0
Регистрация: 23.02.2010
Сообщений: 18
23.02.2010, 11:18 #14
Помогите пожалуйста, у меня проблемы из этой же серии, одну контрольную решаем, он почему-то пишет неправельно. Что не так?

Даны два целых числа. Найти среднее арифметическое кубов этих чисел.
Входные данные:
Два целых числа, которые вводятся в одной строке через пробел.
Выходные данные:
Вещественное число, являющееся результатом решения задачи. Число должно иметь три разряда после десятичной точки.

C
1
2
3
4
5
6
7
8
9
#include<stdio.h>
main()
{
  int a,b;
  printf("введите числа a b");
  scanf("%i %i", &a,&b);
  float m=(a*a*a+b*b*b)/2;
  printf("\n m%=f",m);
}


Определить является ли число A делителем числа B.
Входные данные:
Два целых числа A и B, записанные в одной строке через пробел.
Выходные данные:
Сообщение YES, если число A является делителем числа B. И сообщение NO в противном случае. Сообщение выводится в одной строке заглавными латинскими буквами.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<stdio.h>
 
main()
{
  int A,B;
  printf("зайте числа A B");
  scanf("%i %i",&A,&B);
  int d=B/A;
  if (d==0)
     puts("YES");
  else
     puts("NO");
}
0
Nameless One
Эксперт С++
5777 / 3427 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
23.02.2010, 13:05 #15
Boginy,
ancara,
Цитата Сообщение от Boginy Посмотреть сообщение
Даны два целых числа. Найти среднее арифметическое кубов этих чисел.
C++
1
2
3
4
5
6
7
8
9
10
#include<stdio.h>
int main()
{
int a,b;
printf("Введите числа a b");
scanf("%i %i", &a,&b);
float m=((float)(a*a*a+b*b*b))/2.0;
printf("\n m=%f",m);
return 0;
}
Добавлено через 3 минуты
Цитата Сообщение от Boginy Посмотреть сообщение
k(3<=k<=450)
Мне кажется, что k все-таки должно быть из отрезка [3;150], т.к. всего у нас цифр (150-101+1)*3=150

Добавлено через 1 минуту
Тогда такой код должен сработать:
C++
1
2
3
//...Здесь ты вводишь k
int i=(k/3)%10;
//...Здесь выводишь i
Добавлено через 2 минуты
Цитата Сообщение от Boginy Посмотреть сообщение
10)Определить является ли число A делителем числа B.
Входные данные:
Два целых числа A и B, записанные в одной строке через пробел.
Выходные данные:
Сообщение YES, если число A является делителем числа B. И сообщение NO в противном случае. Сообщение выводится в одной строке заглавными латинскими буквами.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<stdio.h>
 
int main()
{
int A,B;
printf("задайте числа A и B");
scanf("%i %i",&A,&B);
int d=B%A;//!!! Нужно именно "%"!!!
if (d==0)
puts("YES");
else
puts("NO");
return 0;
}
Добавлено через 6 минут
Цитата Сообщение от Boginy Посмотреть сообщение
8) В старояпонском календаре был принят двенадцатилетний цикл. Годы внутри цикла носили названия животных: крысы,коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, петуха, собаки и свиньи. Напишите программу, которая по номеру года определяет его название в старояпонском календаре, если известно, что 1996 год был годом крысы.
Входные данные:
Целое число, определяющее номер года.
Выходные данные:
Одно из сообщений: RAT, COW, TIGER, HARE, DRAGON, SNAKE, HORSE, SHEEP, MONKEY, COCK, DOG, PIG , соответствующее названию года в старояпонском календаре. Сообщение выводится в одной строке заглавными латинскими буквами.
C++
1
2
3
4
5
6
7
8
9
10
11
12
//Ввод года year
int i=(year-1996)%12;
if(i<0)
   i=12-i;
switch(i)
{
   case 0: puts("RAT"); break;
   case 1: puts("COW"); break;
   //... и так далее
   case 11: puts("PIG"); break;
}
//...
Добавлено через 9 минут
И на будущее:
  1. Оператор / для целых чисел работает как целочисленное деление. Если операнды - целые числа, а результат должен быть дробным, то тогда нужно сделать приведение операндов к вещественному типу:
    C++
    1
    2
    3
    
    int a=5, b=2;
    //float c=a/b - в результате получится 2
    float c=((float)a)/((float)b); // - в результате получится 2.5
  2. Оператор %, для целых чисел, - остаток от деления
  3. Функцию main нужно объявлять как возвращающую тип int, а в последней ее строчке нужно поместить return 0 (код успешного завершения программы):
    C++
    1
    2
    3
    4
    5
    
    int main
    {
       //...
       return 0;
    }

Добавлено через 3 минуты
Цитата Сообщение от Boginy Посмотреть сообщение
как мне рисунок вставить?
Вставить куда?
0
23.02.2010, 13:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.02.2010, 13:05
Привет! Вот еще темы с ответами:

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

Найти наибольший общий делитель двух чисел - C++
найти наибольший общий делитель двух чисел с помощью рекурсии и без нее

Наибольший общий делитель для двух чисел - C++
Всем привет! Тут такая задачка, не могу понять как делать( Помогите, пожалуйста. Определить наибольший общий делитель для двух...

Найти наибольший общий делитель двух чисел - C++
Задача &quot;Длинный НОД&quot; Даны два числа. Найти их наибольший общий делитель. Входные данные Вводятся два натуральных числа, не превышающих 10^9...


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

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

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