Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Difi
3 / 3 / 0
Регистрация: 04.06.2018
Сообщений: 22
1

Считать два целых числа, определить, кратно ли первое второму, и вывести эту информацию на печать

08.06.2018, 17:13. Просмотров 993. Ответов 17
Метки нет (Все метки)

Напишите программу, которая считывает два целых числа, после чего определяет, кратно ли первое, второму, и выводит эту информацию на печать.
Хотел бы узнать, я верное построил код? Спасибо за внимание)

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
 
int main(void)
{
    int num1, num2;
    printf("Enter two integer:\n");
    scanf_s("%d%d", &num1, &num2);
    
    if (num1 % 2 == num2 % 2)   
    printf("%d cratno %d\n", num1, num2);
    else printf("%d ne cratno %d\n", num1, num2);
 
    getchar();
    getchar();
    return 0;
}
В вот второй вариант. Это же тоже самое? Какой вариант предпочтительней?

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
 
int main(void)
{
    int num1, num2;
    printf("Enter two integer:\n");
    scanf_s("%d%d", &num1, &num2);
    
    if (num1 % 2 == num2 % 2)   
    printf("%d cratno %d\n", num1, num2);
        if (num1 % 2 != num2 % 2)
    ("%d ne cratno %d\n", num1, num2);
 
    getchar();
    getchar();
    return 0;
}
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2018, 17:13
Ответы с готовыми решениями:

Вывести два числа, первое — количество строчных букв, второе-заглавных
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; int main() { char c; int s=0;...

Даны два целых числа: А и В. Вывести все целые числа, расположенные между числами А и В в порядке убывания
Даны два целых числа: А и В. Вывести все целые числа, расположенные между...

Сравнить два целых числа, вывести результат
Дорогие форумчане, еще один вопрос на сегодня. Признателен Вам. Задача....

Получить два целых числа, после этого вывести большее на печать
Всем добрый день!!!!Помогите пожалуйста решить две задачки. 1)Напишите...

Cформировать два массива целых чисел определённой длинны. вывести на печать числа встречающиеся в каждом массиве
задание №1. найти силу тяготения F двух тел с массами m1 и m2, находящихся на...

17
Байт
Эксперт C
20052 / 12672 / 2664
Регистрация: 24.12.2010
Сообщений: 26,389
08.06.2018, 23:00 2
Цитата Сообщение от Difi Посмотреть сообщение
я верное построил код?
НЕТ. Вы проверяете одинаковую четность чисел, хотя задание совсем другое
C
1
if (num1%num2 == 0)...
Цитата Сообщение от Difi Посмотреть сообщение
Это же тоже самое?
Да.
Цитата Сообщение от Difi Посмотреть сообщение
Какой вариант предпочтительней?
Естественно, оба в топку. Но 1-й приятнее.
1
Radikal_78
47 / 47 / 2
Регистрация: 20.11.2016
Сообщений: 106
08.06.2018, 23:05 3
Difi,
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
 
int main(void)
{
    int num1, num2;
    printf("Enter two integer:\n");
    scanf_s("%d%d", &num1, &num2);
    
    if (!(num1 %  num2))  
    printf("%d cratno %d\n", num1, num2);
    else printf("%d ne cratno %d\n", num1, num2);
 
    getchar();
    getchar();
    return 0;
}
1
Байт
Эксперт C
20052 / 12672 / 2664
Регистрация: 24.12.2010
Сообщений: 26,389
08.06.2018, 23:08 4
Radikal_78, Ну вот сейчас уже похоже на правду

Добавлено через 1 минуту
Radikal_78, простите, я не сразу врубился, что вы - не ТС.
1
Radikal_78
47 / 47 / 2
Регистрация: 20.11.2016
Сообщений: 106
08.06.2018, 23:12 5
Байт,

Не по теме:

бывает))

0
Difi
3 / 3 / 0
Регистрация: 04.06.2018
Сообщений: 22
08.06.2018, 23:38  [ТС] 6
Я не учил такие еще символы как !, else.((

Добавлено через 6 минут
А так верное построено теперь?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
 
int main(void)
{
    int num1, num2;
    printf("Enter two integer:\n");
    scanf_s("%d%d", &num1, &num2);
    
    if (num1%num2 == 0)
        if (num1 > num2)
        printf("Cratno\n");
    if (num1%num2 == 0)
        if (num1 < num2)
    printf("Ne cratno");
 
    getchar();
    getchar();
    return 0;
}
0
Байт
Эксперт C
20052 / 12672 / 2664
Регистрация: 24.12.2010
Сообщений: 26,389
09.06.2018, 10:38 7
Difi, А строчки 10 и 13 зачем?
Что такое кратность знаешь? Учили?
Цитата Сообщение от Difi Посмотреть сообщение
Я не учил такие еще символы как !, else.((
Тогда еще рановато вообще о чем-то разговаривать. Это основы языка. Вот выучишь, тогда и поговорим.
А если ваш курс построен таким дурным образом, так прояви самостоятельность и любопытство. Загляни на пару страниц вперед.
0
Difi
3 / 3 / 0
Регистрация: 04.06.2018
Сообщений: 22
09.06.2018, 10:41  [ТС] 8
Так задания все оговорены с тем что, написать именно с тех знаний , которые дали. Кратность в школе проходил. 40 и 5 например. Они кратны)
0
Байт
Эксперт C
20052 / 12672 / 2664
Регистрация: 24.12.2010
Сообщений: 26,389
09.06.2018, 10:48 9
Цитата Сообщение от Difi Посмотреть сообщение
Кратность в школе проходил. 40 и 5 например. Они кратны)
Почти правильно. Только у понятия "кратность" есть направление. Можно сказать "40 кратно 5-ти", Наоборот - нельзя.
0
Difi
3 / 3 / 0
Регистрация: 04.06.2018
Сообщений: 22
09.06.2018, 10:50  [ТС] 10
Верно и именно по этому вы видите знаки больше и меньше
0
Байт
Эксперт C
20052 / 12672 / 2664
Регистрация: 24.12.2010
Сообщений: 26,389
09.06.2018, 11:15 11
Цитата Сообщение от Difi Посмотреть сообщение
Верно и именно по этому вы видите знаки больше и меньше
Однако, не понял я, зачем мне видеть эти знаки.
утверждение "N кратно M" уже включает в себя N >= M
И равные числа кратны одно другому.
0
Difi
3 / 3 / 0
Регистрация: 04.06.2018
Сообщений: 22
09.06.2018, 13:27  [ТС] 12
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
 
int main(void)
{
    int num1, num2;
    printf("Enter two integer:\n");
    scanf_s("%d%d", &num1, &num2);
 
 
    if (num1%num2 == 0)
    printf("Cratno\n");
    if (num1%num2 != 0)
    printf("Ne cratno");
 
    getchar();
    getchar();
    return 0;
}
Перепроверял и все окей работает! А еще вас послушал и чуток вперед зашел, и узнал else поэтому вместо этой записи if (num1%num2 != 0)
printf("Ne cratno"); можно написать elseprintf("Ne cratno");
1
SlavaSokolov
170 / 134 / 105
Регистрация: 14.04.2016
Сообщений: 735
09.06.2018, 13:52 13
Лучший ответ Сообщение было отмечено Difi как решение

Решение

Цитата Сообщение от Difi Посмотреть сообщение
Перепроверял и все окей работает!
Да, пока вторым числом не вводим 0.
2
Difi
3 / 3 / 0
Регистрация: 04.06.2018
Сообщений: 22
09.06.2018, 14:05  [ТС] 14
Блин, не подумал об этом

Добавлено через 8 минут
Отлично подловили Вы меня)
0
Байт
Эксперт C
20052 / 12672 / 2664
Регистрация: 24.12.2010
Сообщений: 26,389
09.06.2018, 15:21 15
Difi, ну вот теперь похоже на правду. С учетом замечания уважаемого SlavaSokolov, конечно.
0
Difi
3 / 3 / 0
Регистрация: 04.06.2018
Сообщений: 22
09.06.2018, 15:23  [ТС] 16
То есть значи мне нужно сделать проверку сперва на ноль. щас подумаю)
0
Байт
Эксперт C
20052 / 12672 / 2664
Регистрация: 24.12.2010
Сообщений: 26,389
09.06.2018, 15:26 17
Цитата Сообщение от Difi Посмотреть сообщение
щас подумаю
Думайте, думайте... Нет занятия полезней для начинающего программиста!
0
Radikal_78
47 / 47 / 2
Регистрация: 20.11.2016
Сообщений: 106
09.06.2018, 22:10 18
вот мой вариант программы
учитывается деление ноль и работа с отрицательными числами)

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
#include <stdio.h>
 
int main(void)
{
  
    int num1, num2;
    printf("Enter two integer:\n");
    scanf_s("%d%d", &num1, &num2);
    if (num1<0) num1*=-1;   // если заданы отрицательные числа, то берем их модули
    if (num2<0) num2*=-1;
    if ((num2==0) || (num2>num1)) 
          printf("Chisla zadany neverno:\n");
 
    else
    
    if (num1%num2 == 0)
        
        printf("Cratno\n");
    else
    printf("Ne cratno");
   
    getchar();
    getchar();
    return 0;
}
0
09.06.2018, 22:10
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2018, 22:10

Создать файл целых чисел. Найти в каждом числе максимальную и минимальную цифры и записать эту информацию в два новых файла
Создать файл целых чисел. Найти в каждом числе максимальную и минимальную цифры...

Даны два целых числа. Проверить, является ли первое кубом второго
Даны два целых числа. Проверить, является ли первое кубом второго.

Дано два целых числа: месяц и день. Определить правильную дату и вывести знак зодиака соответственно
Недавно начала изучать этот язык программирования, в лабе попалась такая...


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

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

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