Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
0 / 0 / 0
Регистрация: 21.12.2012
Сообщений: 88

Вывод ошибки для дробного и отрицательного числа

19.02.2013, 01:37. Показов 4569. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пишу код для программы вычисления факториала числа.
Как его изменить так, чтобы при вводе дробного и отрицательного числа выводилась ошибка? Заранее спасибо

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once
#include "stdafx.h"
#include "fact.h"
#include <stdio.h>
 
 
long double fact(int N)
{
    // если пользователь ввел отрицательное число
    if(N < 0)
        // возвращаем ноль
        return 0;
    // если пользователь ввел ноль
    if (N == 0)
        // возвращаем факториал нуля
        return 1;
    if (N)
    // Во всех остальных случаях
    else
        // делаем рекурсию
        return N * fact(N - 1);
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.02.2013, 01:37
Ответы с готовыми решениями:

Перевод отрицательного дробного числа в двоичную сс
Здравствуйте, прошу вашей помощи. Как происходит преобразование десятичного отрицательного дробного числа в двоичную сс. Если с целым всё...

Вывод дробного числа
С помощью какого компонента (вместо spinedit в коде) можно делать в формуле дробные числа и выводить их? Заранее спасибо procedure...

Вывод дробного числа
Ребятки, выручайте)) Никогда не работал с Си, поэтому не могу понять, как тут вывести дробное число. У меня такая ситуация: должно...

5
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
19.02.2013, 01:46
Цитата Сообщение от anton_zenit Посмотреть сообщение
Как его изменить так, чтобы при вводе дробного и отрицательного числа выводилась ошибка?
ну отрицательное ты и так проверил а дробное как то так
C++
1
2
3
int a=N;
if(N-a)
 return 0;
Добавлено через 1 минуту
хотя поспешил я
Цитата Сообщение от anton_zenit Посмотреть сообщение
long double fact(int N)
N дробным быть не может поскольку он int
0
0 / 0 / 0
Регистрация: 21.12.2012
Сообщений: 88
19.02.2013, 01:55  [ТС]
Нет, я хотел бы чтобы он вывел "Error" в текстбоксе. Пишу программу windows forms. Причем, вывел Еrror для обоих случаев
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
19.02.2013, 01:59
после вызова функции проверяй значение
если вернула 0(факториал не может быть 0) пиши свой Еrror
0
0 / 0 / 0
Регистрация: 21.12.2012
Сообщений: 88
19.02.2013, 02:05  [ТС]
я не большой мастер. буду благодарен если объяснишь в наглядном виде
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
19.02.2013, 02:14
Цитата Сообщение от anton_zenit Посмотреть сообщение
я не большой мастер. буду благодарен если объяснишь в наглядном виде
я не работаю с формами
поэтому напишу только принцип на MFC
C++
1
2
if(fact(a)==0)// здесь a это число которое ты как то ввел
     txtBox.SetWindowText("Error")// если функция вернуло 0 значит пишем ошибка
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.02.2013, 02:14
Помогаю со студенческими работами здесь

Вывод дробного числа без округления
Насколько я понимаю, printf (как впрочем и cout), если написать printf(&quot;\n\t%2.3f&quot;, s);выведет s с округлением до 3 цифры. A как сделать...

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

ToString() для дробного числа
Нужно что бы преобразовалось в строку без учета локальных настроек, всегда дробная часть была через точку, даже если в локали стоит...

Вывод отрицательного числа
Дано слово ffff, формируем слово , нам нужен один старший разряд, и шесть младших, затем вывести , но число должно определяться как...

Регулярное выражение для дробного числа от 0 до 1
Помогите составить регулярное выражение для дробного числа от 0 до 1. Число типа double, после точки может стоять хоть сколько цифр,...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru