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

Как решается это уравнение? - C++

Восстановить пароль Регистрация
 
Тимка
Сообщений: n/a
23.06.2011, 14:39     Как решается это уравнение? #1
Как решается это уравнение?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.06.2011, 14:39     Как решается это уравнение?
Посмотрите здесь:

составить программу,решающую это уравнение C++
C++ Как решается эта сложная задача
C++ нужно создать таблицу из 3 строк и 4 столбцов и заполнить её (любой информацией,это неважно) . Как это можно сделать ?
C++ как соединить b и с в число, если а это число, б это десятки перевернутого числа, с это единицы перевернутого числа вот в это строчке c=a+b,c;
C++ Не решается (легко)
C++ не решается задача по параллельному программированию
Связанный список. Как это делается и зачем это нужно? C++
Квадратное уравнение решается неправильно C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Roof
Сообщений: n/a
25.06.2011, 17:56     Как решается это уравнение? #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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
//============================================================================
// Name        : Uravnenie.cpp
// Author      : roof
// Version     : 1.0
// Copyright   :If you see it - pay me 100 wmr.
// Description : Hello World in C++, Ansi-style
//============================================================================
 
#include <iostream>
#include <math.h>
#include <time.h>
#include <stdlib.h>
using namespace std;
 
int check(); //проверка ввода целого числа, входящего в диапазон типа int;
void fill_rand_arr1(int* arr, int count); //заполнение  массива.
void output_arr1(int* arr, int count); //вывод массива
double calc_value_lyambda(int* arr, int count); //рассчет ЛЯМБДА
double calc_value_y(int* arr, int count, double lyambda); //расчет y
 
int main() {
    int cnt; //количество элементов массива
    double lbd; //ЛЯМБДА
    int* arr; //динамический одномерный массив
    srand(time(NULL));
    cout << "Введите размер массива" << endl;
    cnt = check(); //проверяем введенный размер массива
 
    arr = new int[cnt]; //создание динамического массива
    fill_rand_arr1(arr, cnt); //заполнение динамического массива случайными значениями
    lbd = calc_value_lyambda(arr, cnt);
    cout << "Лямбда l = " << lbd << endl;
    cout << "Конечное значение y = " << calc_value_y(arr, cnt, lbd) << endl;
    cout << "Весь массив:" << endl;
    output_arr1(arr, cnt);
 
    delete[] arr; //освобождение памяти занимаемой одномерным динамическим массивом
 
    return 0;
}
 
int check() {
    int x;
    while (true) {
        cin >> x; //1
        if (cin.peek() == '\n') { //2
            cin.get(); //3
            break;
        } else {
            cout << "Повторите ввод (ожидается целое число):" << endl;
            cin.clear(); //4
            while (cin.get() != '\n') {
            } //5
        }
    }
 
    /*//1 и //2 - Если в буфере находится целое число, завершаемое символом перевода строки '\n', то по завершении операции в буфере останется только символ '\n'.
     * В //2 это условие проверяется. Если проверка завершена успешно, то оператор
     * //3 очищает входной буфер от символа '\n'. Если введенная информация некорректна, то оператор
     * //4 сбрасывает флаги ошибок, а с помощью оператора
     * //5 извлекаются все символы, вплоть до '\n'. */
 
    return x;
}
 
void fill_rand_arr1(int* arr, int count) {
    for (int i = 0; i < count; i++) {
        *(arr + i) = rand() % 100; //массив заполняется случайными числами от 0 до 99
    }
 
}
 
void output_arr1(int* arr, int count) {
    for (int i = 0; i < count; i++)
        cout << *(arr + i) << "  ";
    cout << endl;
}
 
double calc_value_lyambda(int* arr, int count) {
    double value_lyambda = 0;
    for (int i = 0; i < count; i++)
        value_lyambda += *(arr + i);
    value_lyambda /= count;
    return value_lyambda;
}
 
double calc_value_y(int* arr, int count, double lyambda) {
    double value_y = 0;
    for (int i = 0; i < count; i++)
        value_y += (*(arr + i)) / lyambda;
    return value_y;
 
}
Yandex
Объявления
25.06.2011, 17:56     Как решается это уравнение?
Ответ Создать тему
Опции темы

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