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

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

Войти
Регистрация
Восстановить пароль
 
 
Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
#1

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

25.11.2013, 23:36. Просмотров 380. Ответов 18
Метки нет (Все метки)

Помогите пожалуйста.
Протабулировать функцию f(x,y)=sinx+cos2y, если х є (1; 2.5) у є (0; 1.8) с шагом обоих 0.25.
Вычеслить произведение всех положительных та количество отрицательных значений функции.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2013, 23:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция ☺ (C++):

Функция sqrt: существует более одного экземпляра. Функция перегруженная - C++
#include <iostream> #include <math.h> #include <iomanip> using namespace std; int main(){ float s, p; int c, a; s=0; ...

Функция удаления текста в скобках [2], непосредственно функция + 12кб вложений - C++
Доброго времени суток, случилось так, что пришлось работать с с-строками (лаба, угу), в которой нужно удалить весь текст в скобках,...

Перегрузка операций: friend-функция или функция-член класса - C++
Здравствуйте, меня интересует вопрос, в чем разница при перегрузке операторов через operator и friend. Вот к примеру такой код. class...

какую библиотеку надо подключать чтоб работала функция _getch() и функция cin.get() - C++
какую библиотеку надо подключать чтоб работала функция _getch() и функция cin.get()

что за функция такая strstr? или это не функция? - C++
void search(sp *list){ sp *prt = list; char f,r; cout<<Rus("введите текст")<<endl; cin>>f; cout<<Rus("введите выходной...

Чистая виртуальная функция функция не имеет оператора переопределения - C++
Пишу программу для записи заметок. Есть 2 класса: Page и Note. Note наследуется от Page. Page.h #pragma once ...

18
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
25.11.2013, 23:58 #2
Kolbusdkiy,
C++
1
2
3
for (double x = 1; x <= 2.5; x += 0.25)
for (double y = 0; y <= 1.8; y += 0.25)
cout << f(x,y) << endl;
Функцию ведь сможете составить f(x,y); ?
0
Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
26.11.2013, 00:09  [ТС] #3
Цитата Сообщение от Folko Посмотреть сообщение
Kolbusdkiy,
C++
1
2
3
for (double x = 1; x <= 2.5; x += 0.25)
for (double y = 0; y <= 1.8; y += 0.25)
cout << f(x,y) << endl;
Функцию ведь сможете составить f(x,y); ?
Да, могу.
Вот
C++ (Qt)
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
#include <iostream>
#include <cmath>
#include <iomanip>
 
using namespace std;
 
int main() {
    double x = 1, y;
    cout << " x/y    ";
    while (x <= 2.5) {
        cout << fixed << setprecision(2) << setw(4) << x << "  ";
        x += 0.25;
    }
    cout << endl;
    cout << endl;
    y = 0;
    while (y <= 1.8) {
        cout << fixed << setprecision(2) << setw(4) << y << "   ";
        x = 1;
        while (x <= 2.5) {
            double a;
            a = sin(x) +cos(2)*y;
            cout << fixed << setprecision(3) << setw(4) << a << ' ';
            x += 0.25;
        }
        y += 0.25;
        cout << endl;
    }
 
    return 0;
}
Не могу сделать так, чтобы вычисляло произведение всех положительных та количество отрицательных значений функции. Выдает не правильные значения.
0
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
26.11.2013, 00:22 #4
Kolbusdkiy, честно, я запутался в вашем коде) где у вас находится произведение в коде? И не проще было 2 for'ами сделать?
0
Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
26.11.2013, 00:24  [ТС] #5
Folko, проще бы было, но мне ещё нужно вывести значения в виде таблицы, чтобы было красивенько)) потому и while. А в коде и нет произведение, это чисто функция... я не знаю куда вписать это
C++ (Qt)
1
2
3
4
if (f<0)
            kil++;
        else dob=dob*f;
        cout<<"dobutok="<<dob<<endl<<"kilkist="<<kil;
0
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
26.11.2013, 01:04 #6
Kolbusdkiy,
C++
1
2
3
4
5
6
7
8
9
for (double x = 1; x <= 2.5; x += 0.25)
for (double y = 0; y <= 1.8; y += 0.25)
{
   double res = f(x,y);
   cout << fixed << setprecision(2) << setw(4) << x << "  ";
   cout << fixed << setprecision(2) << setw(4) << y << "   ";
   cout << fixed << setprecision(3) << setw(4) << res << endl;
   /*а сюда сунем проверку */
}
А вот так не подойдет?
0
Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
27.11.2013, 00:56  [ТС] #7
Folko, вот испытал... Не то...
C++ (Qt)
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 <cmath>
#include <iomanip>
 
using namespace std;
 
int main() {
    for (double x = 1; x <= 2.5; x += 0.25)
        for (double y = 0; y <= 1.8; y += 0.25)
        {
            double res = sin(x)+cos(2)*y;
            cout << fixed << setprecision(2) << setw(4) << x << "  ";
            cout << fixed << setprecision(2) << setw(4) << y << "   ";
            cout << fixed << setprecision(3) << setw(4) << res << endl;
            int kil=0;
            double dob=1;
            if (res<0) 
                kil++;
        else {
            dob=dob*res;
        cout<<"dobutok="<<dob<<endl<<"kilkist="<<kil;
        }
}
return 0;
}
0
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
27.11.2013, 00:57 #8
Kolbusdkiy, а что не так?
0
Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
27.11.2013, 01:01  [ТС] #9
Folko, мне после после каждого значения фукции выводит текучее количество отрицательных ну и произведение, потому, что проверка в цикле... А нужно, чтобы в конце было выведено.
0
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
27.11.2013, 01:03 #10
Kolbusdkiy, так вы cout<<"dobutok="<<dob<<endl<<"kilkist="<<kil; вставьте уже после циклов, в конце
0
Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
27.11.2013, 01:10  [ТС] #11
Folko, вот это я и не знал
Теперь выводит правильно. Но, почему то произведение положительных считает не правильно.
0
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
27.11.2013, 01:23 #12
Kolbusdkiy, а вот int kil=0; double dob=1; это лучше сделать еще до циклов, в самом начале функции
1
Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
27.11.2013, 01:27  [ТС] #13
Folko, так и сделал, но в произведении мне выдает 0,000
0
Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
27.11.2013, 01:32 #14
Kolbusdkiy, а у вас там случайно res нулевым не бывает?
1
Kolbusdkiy
0 / 0 / 0
Регистрация: 14.10.2013
Сообщений: 112
27.11.2013, 01:36  [ТС] #15
Folko, нет, он как можно близко к нулю приближается, но не ноль.
0
27.11.2013, 01:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2013, 01:36
Привет! Вот еще темы с ответами:

Создать производный класс, в котором реализована функция умножения вектора на число и функция сложения двух векторов - C++
Write программу с использованием класса Вектор (не без помощи форумчанина), но необходимо создать производный класс, в котором реализована...

Функция заполняющая массив и функция вывода массива - C++
Напишите две функции. Первая функция заполняет массив, вторая функция выводит массив на экран

Нужно сделать, чтобы программа состояла из 3 функций, тоесть 1-ая функция ввода массива, 2-ая основная функция, 3-я- вывод массива - C++
Есть программа #include &lt;iostream&gt; #include &lt;algorithm&gt; const int N = 5; int handSet(void) { int a; std::cout...

Функция возвращающая абсолютное разницу первого и второго параметров и функция типа int, возвращающая минимальное из трех целых чисел - C++
Разработать заданные согласно условия функции и сделать в главной программе по два вызова этих функций с различными параметрами. Для...


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

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

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