Форум программистов, компьютерный форум CyberForum.ru

Функция void - C++

Восстановить пароль Регистрация
 
Алексей123456
3 / 3 / 0
Регистрация: 11.05.2013
Сообщений: 56
23.11.2013, 11:39     Функция void #1
Составить функцию типа void для решения представленной ниже задачи:
Определить является ли число простым. формальные параметры - число и признак, который равен 1,если число простое, и 0, если иначе.
Вот мой код ,но он как-то неправильно работает с двузначными числами:
Код C++

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 <iostream>
#include <math.h>
using namespace std;
void F1(int n)
{   
    
     float end = sqrt((float)n);
     
     for (int i=2; i <= end; ++i) {
        if (n%i == 0) {
        cout << "Число не простое" << endl;   
        }
        else cout << "Число простое" << endl;
    }
}
 
int main()
{
    setlocale(LC_ALL,"Russian");
    int n;
    cin>>n;
    F1(n);
    
    return 0;
}
Ппомогите разобраться что не так?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
23.11.2013, 11:42     Функция void #2
Зачем вы написали это?
Цитата Сообщение от Алексей123456 Посмотреть сообщение
C++
float end = sqrt((float)n);
Алексей123456
3 / 3 / 0
Регистрация: 11.05.2013
Сообщений: 56
23.11.2013, 11:43  [ТС]     Функция void #3
Это код для определения простое число или нет
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
23.11.2013, 11:58     Функция void #4
Цитата Сообщение от Алексей123456 Посмотреть сообщение
Это код для определения простое число или нет
sqrt - это функция, которая возвращает квадратный корень из числа. ( http://www.cplusplus.com/reference/cmath/sqrt/ )
C++
void F1(int n)
{
    int b = 0;
    
    for (int i = 2; i < n; i++) // ПРОБУЕМ ДЕЛИТЬ НА i В ПРОМЕЖУТКЕ 2...N-1
    {
        if (n%i == 0)           // ЕСЛИ ЧИСЛО ДЕЛИТСЯ НА i БЕЗ ОСТАТКА
        {
            b++;                // ТОГДА ПРИБАВЛЯЕМ К b ЕДИНИЦУ
        }
    }
    if(b == 0)                  // ЕСЛИ b НИ РАЗУ НЕ ДЕЛИЛОСЬ БЕЗ ОСТАТКА НА ПРОМЕЖУТКЕ 2...N-1
        cout << "Простое число." << endl;
    else
        cout << "Не простое число." << endl;
}
Алексей123456
3 / 3 / 0
Регистрация: 11.05.2013
Сообщений: 56
23.11.2013, 12:06  [ТС]     Функция void #5
спасибо большое)

Добавлено через 3 минуты
а разве cout не в int main пишется??
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
23.11.2013, 12:11     Функция void #6
Цитата Сообщение от Алексей123456 Посмотреть сообщение
а разве cout не в int main пишется??
Пишется в любой функции, не только в майне.
Кликните здесь для просмотра всего текста

C++
#include <iostream>
//#include <math.h>
using namespace std;
 
 
void F1(int n)
{
    int b = 0;
    
    for (int i = 2; i < n; i++) // ПРОБУЕМ ДЕЛИТЬ НА i В ПРОМЕЖУТКЕ 2...N-1
    {
        if (n%i == 0)           // ЕСЛИ ЧИСЛО ДЕЛИТСЯ НА i БЕЗ ОСТАТКА
        {
            b++;                // ТОГДА ПРИБАВЛЯЕМ К b ЕДИНИЦУ
        }
    }
    if(b == 0)                  // ЕСЛИ b НИ РАЗУ НЕ ДЕЛИЛОСЬ БЕЗ ОСТАТКА НА ПРОМЕЖУТКЕ 2...N-1
        cout << "Простое число." << endl;
    else
        cout << "Не простое число." << endl;
}
 
 
int main()
{
    setlocale(LC_ALL,"Russian");
    int n;
    cin >> n;
    F1(n);
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2013, 12:18     Функция void
Еще ссылки по теме:

C++ Функция void
C++ Что делает функция void gotoxy?
C++ Функция с указателем на void** не получается вернуть данные?

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

Или воспользуйтесь поиском по форуму:
Алексей123456
3 / 3 / 0
Регистрация: 11.05.2013
Сообщений: 56
23.11.2013, 12:18  [ТС]     Функция void #7
Спасибо огромное! а то с нашим изучением програмирования совсем беда(
Yandex
Объявления
23.11.2013, 12:18     Функция void
Ответ Создать тему
Опции темы

Текущее время: 05:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru