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

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

Войти
Регистрация
Восстановить пароль
 
Анастисия
Сообщений: n/a
#1

Напишите пожалуйста програмный код) - C++

27.11.2009, 17:18. Просмотров 731. Ответов 3
Метки нет (Все метки)

Здраствуйте! Помогите пожалуйста бедной)С++
1)Написать программу используя функциюкоторая определяет:является ли число целым(с с помощью цикла for)
2)Написать программу которая заминяет отрицательные элементы массива на среднее арифметическое а положительные элементы на произведение элементов массива.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2009, 17:18     Напишите пожалуйста програмный код)
Посмотрите здесь:

блок-схема алгоритма и програмный код функции C++
напишите пожалуйста программный код C++
C++ Напишите пожалуйста Код программы генерирующей случайные величины но не функцией Rand
C++ програмный код
В техе дали тему для курсача напишите код пожалуйста ? C++
Вставка поиска в програмный код C++
напишите пожалуйста исходный код выражения C++
нужно написать програмный код для решения задачи создания бинарного файла C++
C++ Подредактировать програмный код
C++ Пожалуйста напишите код, я новичок
Напишите пожалуйста код программы по фото заданию! C++
C++ Напишите, пожалуйста, код программки

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Акелла
Сонный металюга
45 / 45 / 6
Регистрация: 10.05.2009
Сообщений: 295
28.11.2009, 03:44     Напишите пожалуйста програмный код) #2
1.целым - в смысле принадлежащим типу int / long или как?
уточняйте задачу - чем точнее спросите тем точнее ответят, ребята

2. опять же -какой массив? напишу - потом не жалуйся
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
float mas[N]; //N -сами определите сколько надо
int i;
 
float fSrAr , fPrz = 1;
 
for(i = 0; i < n; i++)
{
     fSrAr = fSrAr + mas[i];
     fPrz = fPrz * mas[i];
}
fSrAr  =  fSrAr / N;
 
for(i = 0; i < n; i++)
{
     if(mas[i] < 0)  mas[i] = fSrAr ;
     else if(mas[i] > 0) mas[i] = fPrz;
}
//вывод сами осилите?
easybudda
Эксперт С++
9455 / 5468 / 927
Регистрация: 25.07.2009
Сообщений: 10,493
28.11.2009, 06:05     Напишите пожалуйста програмный код) #3
Анастисия, первое задание, если правильно понял, получить строку и определить, является ли она представлением целого числа? Вот простенький вариант:
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
 
#include <string>
using std::string;
 
// функция, которая определяет, является ли число целым
// возвоащает true, если да
bool checkVal(const string& s){
    string::const_iterator i;
    for ( i = s.begin(); i != s.end(); i++ ){
        if ( i == s.begin() && ( *i == '-' || *i == '+' ) )
            continue;
        if ( *i < '0' || *i > '9' )
            return false;
    }
    
    return true;
}
 
 
// Написать программу используя функцию, которая определяет, является ли число целым (с помощью цикла for)
int main(){
    string str;
    
    while ( 1 ){
        cout << "Введите число (0 - выход): ";
        cin >> str;
        if ( str.at(0) == '0' )
            break;
        
        if ( checkVal(str) )
            cout << "Ага, похоже на целое число." << endl;
        else
            cout << "Не-а, не похоже!" << endl;
    }
    
    return 0;
}
Добавьте только в начало main что-нибудь типа setlocale(LC_ALL, ""), чтобы русские буквы выводились, ну или просто вывод транслитом перепишите... А можно ещё пробелы в начале / в конце строки удалять, проверять запись типа 1e2, etc... короче, есть, где развернуться

Цитата Сообщение от Акелла Посмотреть сообщение
float fSrAr , fPrz = 1; for(i = 0; i < n; i++) { fSrAr = fSrAr + mas[i];
fSrAr - неинициализированная переменная. Тогда уж
C++
1
float fSrAr = 0, fPrz = 1;
Цитата Сообщение от Акелла Посмотреть сообщение
for(i = 0; i < n; i++) { if(mas[i] < 0) mas[i] = fSrAr ; else if(mas[i] > 0) mas[i] = fPrz; }
Была N большая, стала маленькая... 0 тоже положительным числом считается. Да и записать короче можно:
C++
1
2
for ( i = 0; i < N; i++ )
    mas[i] = ( mas[i] < 0 ) ? fSrAr : fPrz;
Добавлено через 1 час 8 минут
Цитата Сообщение от Анастисия Посмотреть сообщение
2)Написать программу которая заминяет отрицательные элементы массива на среднее арифметическое а положительные элементы на произведение элементов массива.
Всё равно не спится
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
using std::cerr;
 
int main(){
    double sum, mul, avg, *arr;
    size_t count, i;
    
    cout << "Элементов в массиве: ";
    cin >> count;
    
    if ( !count ){
        cerr << "Хоть один-то элемент должен быть." << endl;
        return 1;
    }
    
    arr = new double [ count ];
    
    sum = 0.0;
    mul = 1.0;
    for ( i = 0; i < count; i++ ){
        cout << "arr[" << i << "] = ";
        cin >> arr[i];
        sum += arr[i];
        mul *= arr[i];
    }
    
    avg = sum / (double)count;
    
    cout << endl << "Введённый массив:" << endl;
    for ( i = 0; i < count; i++ )
        cout << "arr[" << i << "] = " << arr[i] << endl;
        
    cout << endl << "Среднее арифметическое элементов = " << avg << endl;
    cout << "Произведение элементов = " << mul << endl;
    
    for ( i = 0; i < count; i++ )
        arr[i] = ( arr[i] < 0 ) ? avg : mul;
    
    cout << endl << "После обработки:" << endl;
    for ( i = 0; i < count; i++ )
        cout << "arr[" << i << "] = " << arr[i] << endl;
        
    delete [] arr;
    return 0;
}
То же замечание по поводу русских букв в консоли...
Акелла
Сонный металюга
45 / 45 / 6
Регистрация: 10.05.2009
Сообщений: 295
28.11.2009, 13:43     Напишите пожалуйста програмный код) #4
неважно=) я же объяснял идею в 3.40 ночи=))
Yandex
Объявления
28.11.2009, 13:43     Напишите пожалуйста програмный код)
Ответ Создать тему
Опции темы

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