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

Помогите исправить программу решения системы уравнений - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Объясните код http://www.cyberforum.ru/cpp-beginners/thread1203177.html
Задача Улитка. Улитка ползёт по вертикальному шесту высотой h метров, поднимаясь за день на a метров, а за ночь спускаясь на b метров. На какой день улитка доползёт до вершины шеста? Программа получает на вход натуральные числа h, a, b и должна вывести одно натуральное число. Гарантируется, что a>b. При решении этой задачи нельзя пользоваться условной инструкцией if и циклами. int...
C++ Программа, которая будет работать с персональными данными 5 сотрудников малого предприятия Добрый вечер! Я изучать С++ начал, дошел до массивов и попалась задача вот такого содержания: "Программа, которая будет работать с персональными данными 5 сотрудников малого предприятия. Программа должна для каждого сотрудника хранить следующую информацию: • Фамилия • Имя • Отчество • Пол • Год рождения • Должность • Заработная плата http://www.cyberforum.ru/cpp-beginners/thread1203176.html
C++ Сортировка слиянием: подсчитать количество перестановок
Привет всем. Дана задача: подсчитать количество перестановок при сортировке массива. Нужен быстрый алгоритм, желательно алгоритм сортировки слиянием. Вот код: #include <stdio.h> #include <conio.h> void Merge(int *A, int first, int last) { int middle, start, final, j; int *mas=new int; middle = (first + last) / 2; start = first;
C++ Вставка элемента в массив после последнего положительного
Нужно сделать программу, которая бы вставляла после последнего положительного элемента массива заданное значение, в противном случае вывести "ошибку". Что-то не получается. Посмотрите и подскажите, где ошибка? #include <iostream.h> #include <conio.h> #include <stdlib.h> #include <time.h> void main () { int mas, i, a, b; cout<<"Vvedite chislo: "; cin >>a;
C++ Работа с переменными http://www.cyberforum.ru/cpp-beginners/thread1203133.html
В универе дали задание сделать что-то типо текстового редактора, выполняющего три функции: 1. Повышение регистра первых букв слов 2. Добавление в конец текста нового текста 3. Вставка в конец текста новый текст из файла Исходный текст вводится в начале, а затем на выбор предаставляются эти функции, причем порядок использования неважен и количество использования тоже не ограничено. То есть...
C++ Получить все n-элементные последовательности из нулей и единиц содержащие ровно m единиц (m<=n) Получить все n-элементные последовательности из нулей и единиц содержащие ровно m единиц (m<=n) Помогите, пожалуйста подробнее

Показать сообщение отдельно
Kuzia domovenok
1890 / 1745 / 118
Регистрация: 25.03.2012
Сообщений: 5,924
Записей в блоге: 1
09.06.2014, 14:03     Помогите исправить программу решения системы уравнений
A7X, ну а какое должно быть решение?

Добавлено через 2 минуты
C++
1
2
3
    int f = F(n, x1, x2);
 
    while ( f == 1){
не легче писать так???
C++
1
2
while( F(n, x1, x2) ){
...
Добавлено через 11 минут
идём далее! бред полный тут
C++
1
2
3
4
5
6
7
8
9
10
11
12
 for (int i = 0; i < n; i++){
            double t = x2[i];
            double s = 0;
            for (int j = 0; j < n; j++)
                s = s + A[i][j] * x1[j];//используешь значения x1[i], но при вычислении x1[i+1] будет использоваться 
 
//значения x не от предыдущей итерации, а наполовину от предыдущей - наполовину от текущей!
            s = s - A[i][i] * x1[i];
            x2[i] = (1.0 / A[i][i]) * (b[i] - s);
            x1[i] = t;//Вот! тут же их меняешь, не закончив толком текущую итерацию
 
        }
Добавлено через 1 минуту
точнее, что я туплю. у тебя и х2 и х1 всё вперемешку!

Добавлено через 8 минут
Вот, я бы так сделал!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    do{
        for (int i = 0; i < n; i++){
            double s = 0;
            for (int j = 0; j < n; j++)
                s = s + A[i][j] * x1[j];
            s = s - A[i][i] * x1[i];
            x2[i] = (1.0 / A[i][i]) * (b[i] - s);
        } 
        f=F(n, x1, x2);
        for (int i = 0; i < n; i++)
            x1[i]=x2[i];
    }while (f);
  cout << "х:" << endl;
    for (int i = 0; i < n; i++)
        cout << x1[i] << endl;
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru