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

Программа не работает с вещественными числами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Контейнер map http://www.cyberforum.ru/cpp-beginners/thread1171216.html
в программе используется ассоциативный массив, идентификатором которого являются символы проблема в том что появляется элемент с идентификатором символом -51 'Н', и неважно был ли он задан или нет, как я понимаю это происходит при созданиии массива, массив создаётся с 1-м элементом с каким то идентификатором ('Н') и какимито данными (которые берёт из памяти), но при работе программы из-за этого...
C++ Разное значение переменной класса, в разных экземплярах класса Вот примерный код: class Test { private: static int countC; static int countD; void initWeight(){ double a; char fname; sprintf(fname,"test%d", countC); http://www.cyberforum.ru/cpp-beginners/thread1171204.html
C++ Функция стандартного нормального отклонения (аналог NORMSDIST из Excel)
Добрый день. Хочу написать функцию, которая работает подобно НОРМСТРАСП в Excel, т.е. возвращает функцию стандартного интегрального распределения. Ее формула f(x)={1}/{\sqrt{2*\pi }}*{exp}^{-{x}^{2}/2}. Пробую подручными методами x=-1.7930; fx=(1/(sqrt(2*M_PI)))*exp(-pow(x,2)/2);, выводится совсем не то. Догадываюсь, что пишу глупости, но прошу о помощи, ибо не знаю, как сделать иначе ...
C++ Найти сумму модулей отрицательных нечетных элементов массива
Найти сумму модулей отрицательных нечетных элементов. Получить новый массив путем возведения в квадрат элементов, стоящих на четных местах.
C++ Сформировать массив из N чисел Фибоначчи http://www.cyberforum.ru/cpp-beginners/thread1171176.html
Привет всем. Нужно написать программу,формирующую массив из n чисел фибоначчи. Вот мой код. #include <stdio.h> int n, i; int *a = new int; int main() { scanf("%d", &n); for (i = 0; i <= n; i++){
C++ Ошибка в коде.Метод зейделя Соственно проблема в том, что она работает где-то до окончания do вылетает с ошибкой, если кто-то видит где ошибка напишите пожалуйста #include <math.h> #include <iostream> #include <iomanip> using namespace std; main() { setlocale(0, ""); int i,j,n,it,m,k; double E,s,w,de,d; подробнее

Показать сообщение отдельно
zaqwerty
1 / 1 / 1
Регистрация: 14.12.2013
Сообщений: 113

Программа не работает с вещественными числами - C++

10.05.2014, 10:48. Просмотров 254. Ответов 4
Метки (Все метки)

Здравствуйте. Написал программу, которая выводит на экран квадратную матрицу порядка n (n=1...15 - порядок задается пользователем) и ненулевые элементы этой матрицы. Причем матрица заполняется не с помощью генератора случайных чисел, а с помощью ручного ввода каждого ее элемента.

Дело в том, что, когда я ввожу целые числа ( то есть задаю значения элементов матрицы), то программа работает нормально. Но если я ввожу нецелое число, то программа начинает работать некорректно. Как можно исправить эту ошибку?

Код программы представлен ниже:
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
#include <stdio.h>// îáúÿâëåГ*ГЁГҐ Г§Г*ãîëîâî÷Г*ûõ ГґГ*éëîâ
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <locale.h>
#include <iostream> 
#define SIZE 15
int main()// ГЈГ«Г*ГўГ*Г*Гї ГґГіГ*êöèÿ; Г*Г*Г·Г*ëî ïðîãðГ*ììû
{   using namespace std;
setlocale(LC_ALL,"Russian");//ГґГіГ*êöèÿ, Г*åîáõîäèìГ*ÿäëÿîòîáðГ*æåГ*èÿðóññêîãîÿçûêГ*ГўГЄГ®Г*ñîëè
int i, j, n, a[SIZE][SIZE]; 
char c;
    printf ("Õîòèòå âûïîëГ*ГЁГІГј ïîèñê ГЁГ*äåêñîâ Г*ГҐГ*óëåâûõ ýëåìåГ*òîâ Г¬Г*Г±Г±ГЁГўГ*?\n 1) Г„Г*\n 2) Âûõîä\n");
    scanf("%d",&c);
    switch (c)
{case 1:
 
    {
 
printf("Ââåäèòå ÷èñëî îò 1 äî 15 \n");
    scanf("%d",&n); 
if((n<1)||(n>15))
{
printf("Íåîáõîäèìî ГўГўГҐГ±ГІГЁ ÷èñëî n Гў ГЁГ*òåðâГ*ëå îò 1 äî 15");
return 0;
    }
else
 
 
for (i=0;  i<n; i++)
 
    {
        for (j=0;  j<n;  j++)
{
printf("Ââåäèòå ýëåìåГ*ГІГ» Г¬Г*òðèöû \n"); 
printf("a[%d][%d]=",i+1,j+1);
scanf("%d",&a[i][j]);
 
}
        printf("\n");
    }
    for (i = 0; i < n; i++)
{
    for (j = 0; j < n; j++) printf("%4d", a[i][j]);
    printf("\n");
}
 
 
   for (i = 0; i < n; i++)
{
    for (j = 0; j < n; j++) 
if (a[i][j]!=0)
    printf("ГЌГҐГ*óëåâîé ýëåìåГ*ГІ a[%d][%d]=%d\n", i+1, j+1, a[i][j]);
    printf("\n");
}break;}
case 2:
    {printf("Áóäåò âûïîëГ*ГҐГ* âûõîä ГЁГ§ ïðîãðГ*ììû. ГЌГ*æìèòå ëþáóþ ГЄГ«Г*ГўГЁГёГі");
    
    break;}
    default: printf("Íåîáõîäèìî âûáðГ*ГІГј äåéñòâèå 1 èëè äåéñòâèå 2. ГЌГ*æìèòå ëþáóþ ГЄГ«Г*ГўГЁГёГі ");
 
}}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru