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

Лабораторная по программированию. ХЕЛП=( - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Наследование http://www.cyberforum.ru/cpp-beginners/thread830433.html
На языке С++ описать модель данных для вычисления площадей и периметров геометрических фигур на плоскости: треугольников и прямоугольников. Необходимо вывести на экран площадь и периметр треугольника со сторонами 4, 5.5, 7, а также прямоугольника с шириной 6.7 и высотой 4. Разработать модель данных, основанных на иерархии классов. Базовый класс описывает общие поля и методы фигур, в классе...
C++ Наследование (описать модель данных для вычисления площадей и периметров геометрических фигур на плоскости:) На языке С++ описать модель данных для вычисления площадей и периметров геометрических фигур на плоскости: треугольников и прямоугольников. Необходимо вывести на экран площадь и периметр треугольника со сторонами 4, 5.5, 7, а также прямоугольника с шириной 6.7 и высотой 4. Разработать модель данных, основанных на иерархии классов. Базовый класс описывает общие поля и методы фигур, в классе... http://www.cyberforum.ru/cpp-beginners/thread830431.html
Дана квадратная матрица порядка. Найти суммы элементов ее диагоналей, параллельных главной, побочной C++
Помогите пожалуйста решить. 4. Дана квадратная матрица порядка*M. Найти суммы элементов ее диагоналей, параллельных главной, побочной (начиная с*одноэлементной диагонали*A A.
Дана строка вида отдел_фамилия_оклад. Пробелов может быть несколько.Получить из нее название_отдела,оклад C++
дана строка вида отдел_фамилия_оклад пробелов может быть несколько получить: - название_отдела(string) оклад(int)
C++ Дана целочисленная матрица.Вывести номер ее первой, последней строки, столбца, содержащего максимальное количество одинаковых элементов. http://www.cyberforum.ru/cpp-beginners/thread830423.html
Помогите пожалуйста решить. 2. Дана целочисленная матрица размера*M*x*N. Вывести номер ее первой, последней строки, столбца, содержащего максимальное количество одинаковых элементов.
C++ Выборка данных из двух таблиц SQL Server для СУБД C++ Borland Нужно отобрать данные из двух таблиц по определенным параметрам причем одно из полей, которые нужно отобрать, является ключевым. Соответственно иногда получается так, что это ключевое поле остается пустым т.к. по параметрам ничего не было найдено. В результате выдает ошибку мол это поле не может быть NULL. Вопрос можно ли в C++ отловить эту ошибку и вывести сообщение, что подходящих данных не... подробнее

Показать сообщение отдельно
Jarto
1 / 1 / 1
Регистрация: 06.01.2013
Сообщений: 80
07.04.2013, 13:48  [ТС]     Лабораторная по программированию. ХЕЛП=(
ой. я не весь код скинул)) прости.
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
#include <stdio.h>
 
void main()
{
    FILE *fout, *fin;
    fin=fopen("in.txt","r");
    fout=fopen("out.txt","w");
    int ai, firstEl, lastEl, prevEl, N, lenght, l = 0;
    float  slope = 0;
    
 
    fprintf(fout, "Элемент        Последовательность  Крутизна");
    fscanf(fin, "%d ", &ai);
    fprintf(fout, "\n%d", ai);
    N = 0;
    do
    {
        firstEl = ai;
        prevEl = ai;
        fscanf(fin, "%d ", &ai);
        if (prevEl < ai) fprintf(fout, "\n%d", ai);
 
        while (ai >= prevEl)
        {
            l++;
            lastEl = ai;
            prevEl = ai;
            fscanf(fin, "%d ", &ai);
            if  ((ai < prevEl) || (feof(fin))) break;
            fprintf(fout, "\n%d", ai);
        }
        
        if (((float)(lastEl-firstEl))/(l) >= slope)
            lenght = l;
 
        if (l != 0)
            slope = ((float)(lastEl-firstEl))/(l);
        else
            slope = 0;
 
        
 
        if ((!feof(fin)) || (l == 2))
        {
            fprintf(fout, "%14d %23f", ++N, slope);
            l = 0;
        }
        if ((ai < prevEl))
            fprintf(fout, "\n%d", ai);
 
        
    }
    while (!feof(fin));
 
        lastEl = ai;
        if (l != 0)
            slope = ((float)(lastEl-firstEl))/(l);
        else
            slope = 0;
        
        if (l >= 2) fprintf(fout, "\n%d", ai);
    /*if (slope != 0)*/ fprintf(fout, "%14d %23f", N+1, slope);
        fprintf(fout, "\n\nдлина макс крутизны: %d", lenght+1);
}
Добавлено через 7 минут
блин, спасибо, теперь выводит норм)) я дурак. но оказывается теперь что он неправильно высчитывает крутизну.
крутизна отрезка высчитывается по формуле (a[j]-a[i])/(j-i), но для последней подпоследовательности 2 20 20 он выводит 18. неправильно как-то.
 
Текущее время: 17:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru