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

обьясните код - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Строки, коварная арифметика http://www.cyberforum.ru/cpp-beginners/thread80208.html
Ребята помогите пожалуйста сделать это, ато дали вот такую лабу, а объяснений ноль, знаю лишь основы массивов, указателей, и всё, так что как это можно делать без функций хз, читал в нэте про какой то калькулятор, но там ещё библиотеки написаны, мне такое не надо обсолютно Определите значение арифметического выражения, в котором могут быть числа, переменные(не более одного символа) и скобки,...
C++ создать структуру Помогите плз создать структуру !!Вокзал. Номер поезда, пункт назначения, дни следования, время прибытия, время стоянки. Выбор по произвольному шаблону. В перечень обязательных функций входят: - «очистка» структурированных переменных; - поиск свободной структурированной переменной; - ввод элементов (полей) структуры с клавиатуры; - вывод элементов (полей) структуры с клавиатуры; - поиск в... http://www.cyberforum.ru/cpp-beginners/thread80193.html
C++ Cформировать одномерный массив Y, для элементов которого выполняется условие
C++ Дан двумерный массив X. Cформировать одномерный массив Y, для элементов которого выполняется условие: 0<cos(Xij)<корня 3/2. Оформить в виде функций. #include <iostream> #include <stdlib.h> #include <time.h>
переделать с исполбзованием динамических массивов C++
плз может кто знает как это делать вобщем вот это: // 9.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> #include <cctype> #include <string.h>
C++ Функции. http://www.cyberforum.ru/cpp-beginners/thread80183.html
Вот нужно инициализировать и использовать массивы. такой программы:Вводятся два комплексных числа в алгебраической форме. Написать функцию, которая вычисляет частное от деления двух введённых комплексных чисел и выводит результат в алгебраической форме!Как это сделать в С++,МОЖЕТЕ ПОКАЗАТЬ пожалуйста, ато в уневере достали!
C++ Моделирование Доброе время суток) Помогите смоделировать программу на Си Суть такова: Робот без участия человека ищет выход из лабиринта; лабиринт задается массивом 15х15, 0 - стена, 1 - проход, 2 - выход. С реализацией проблемы.. С языком, вернее) помогите, пожалуйста подробнее

Показать сообщение отдельно
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
28.12.2009, 10:06     обьясните код
Очень часто труднее разобраться в коде с ошибками, чем написать новый. Вот по предложенному алгоритму написал код. Проверил на приведенном примере в doc-ском документе, показал правильный результат.
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
#include <fstream>
#include <iostream.h>
#include <math.h>
using namespace std;
  
int main()
{
    const int n = 3;
    int i, j, i1, temp;
    float a[n][n], b[n], y[n], x[n];
    ifstream F("1.txt");
    for (i = 0; i < n * n; ++i)
        F >> a[i / n][i % n];
    for(i=0; i<n; i++)
        F>>b[i];
    F.close();
    for(j=0; j<n; j++)
        for(i=j; i<n; i++)
        {
            if(j==i)
            {
                temp=a[i][j];
                for(i1=0; i1<j; i1++)
                    temp-=pow(a[i][i1], 2);
                a[i][j]=pow(temp, 0.5);
            }
            else
            {
                temp=a[i][j];
                for(i1=0; i1<j; i1++)
                    temp-=a[i][i1]*a[j][i1];
                a[i][j]=temp/a[j][j];
            }
        }
    for(i=0; i<n-1; i++)
        for(j=i+1; j<n; j++)
            a[i][j]=a[j][i];
    for(i=0; i<n; i++)
    {
        temp=b[i];
        for(j=0; j<i; j++)
            temp-=y[j]*a[i][j];
        y[i]=temp/a[i][i];
    }
    for(i=n-1; i>=0; i--)
    {
        temp=y[i];
        for(j=n-1; j>i; j--)
            temp-=x[j]*a[i][j];
        x[i]=temp/a[i][i];
    }
    for(i=0; i<n; i++)
        cout<<x[i]<<" ";
    cout<<endl;   
 
    return 0;
}
В файле 1.txt данные записаны так:
сначало массив A:
81 -45 45
-45 50 -15
45 -15 38
потом ниже массив b (можно его писать и в строчку):
531
-460
193
 
Текущее время: 16:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru