Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Неинициализированные переменные 
:(
    Опции темы
Mello
Дата 2.2.2012, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 30.1.2012

Репутация: нет
Всего: нет



Вообщем при компиляции моей проги для решения статистических задач, проект сделан на MS Visual Studio 2010
Код
#pragma warning(push)
#pragma warning(disable:  4101 4390)
#pragma warning(pop)
#include "stdafx.h"
#include "stdio.h"
#include "iostream"
#include "conio.h"
#include "stdlib.h"
#include "math.h"
#include <iomanip> 
#include <afxwin.h> 
#include <string.h> 

double disp()
{
    {
int ix1, ix2, ix3, ix4;

unsigned short f1,f2,f3,f4;
unsigned short fi1,fi2,fi3,fi4;
unsigned short m1, m2, m3, m4;
unsigned short midf1, midf2, midf3, midf4;
unsigned short midi1, midi2, midi3, midi4;
unsigned short midm1, midm2, midm3, midm4;


printf(" 1. Vvedite kolichestvo izgotovlenyh detaley\n");  
scanf_s("%i", &ix1);
printf("1.kol-vo rabochih imeyushih dannuyu proizvoditelnost' v 1 brigade\n");
scanf_s("%d", f1);
printf("1.kol-vo rabochih imeyushih dannuyu proizvoditelnost' v 2 brigade\n");
scanf_s("%d", fi1);

printf(" 2. Vvedite kolichestvo izgotovlenyh detaley \n");
scanf_s("%i", ix2);
printf("2.kol-vo rabochih imeyushih dannuyu proizvoditelnost' v 1 brigade\n");
scanf_s("%d", f2);
printf("2.kol-vo rabochih imeyushih dannuyu proizvoditelnost' v 2 brigade\n");
scanf_s("%d", fi2);

printf(" 3. Vvedite kolichestvo izgotovlenyh detaley\n"); 
scanf_s("%i", ix3);
printf("3. Kol-vo rabochih imeyushih dannuyu proizvoditelnost' v 1 brigade \n");
scanf_s("%d", f3);
printf("3. Kol-vo rabochih imeyushih dannuyu proizvoditelnost' v 2 brigade \n");
scanf_s("%d", fi3);

float suman, summ, sumf, sumif, sumit, summy;



system ("cls");
printf("------------------------------------------------------------------------|\n");
printf("| ix1  |  brigada 1 |  brigada 2|  mi   |  opredelenie srednih velichin |\n");
printf("|      |  f1        |   fi1     |       | ix1*f1  |  ix1*fi1  |  ix1*mi |\n");
printf("-----------------------------------------------------------------------------------------------------|\n");
printf("| %2i |  %2d  |  %2d  | %3d  |  %3d | %3d  |  %3d  |\n", ix1, f1, fi1, m1, midf1=ix1*f1, midi1=ix1*fi1, midm1=ix1*m1);
printf("-----------------------------------------------------------------------------------------------------|\n");
printf("| %2i |  %2d  |  %2d  | %3d  |  %3d | %3d  |  %3d  |\n", ix2, f2, fi2, m2, midf2=ix2*f2, midi2=ix2*fi2, midm2=ix2*m2);
printf("-----------------------------------------------------------------------------------------------------|\n");
printf("| %2i |  %2d  |  %2d  | %3d  |  %3d | %3d  |  %3d  |\n", ix3, f3, fi3, m3, midf3=ix3*f3, midi3=ix3*fi3, midm3=ix3*m3);
printf("-----------------------------------------------------------------------------------------------------|\n");
printf("| %2i |  %2d  |  %2d  | %3d  |  %3i | %3i  |  %3i  |\n", ix4, f4, fi4, m4, midf4=ix4*f4, midi4=ix4*fi4, midm4=ix4*m4);
printf("-----------------------------------------------------------------------------------------------------|\n");
printf("|summa | %2d       |  %2d      | %2d    |  %3f    | %3f       |  %3f    |\n", sumf=(float)ix1+(float)ix2+(float)ix3+(float)ix4, sumif=(float)f1+(float)f2+(float)f3+(float)f4, summ=(float)m1+(float)m2+(float)m3+(float)m4, suman=(float)midf1+(float)midf2+(float)midf3+(float)midf4, sumit=(float)midi1+(float)midi2+(float)midi3+(float)midi4, summy=(float)midm1+(float)midm2+(float)midm3+(float)midm4);
printf("-----------------------------------------------------------------------------------------------------|\n"); 


float proz1, proz2, sumsequence;


std::cout << " Nahodim srednyuyu proizvoditelnost' truda dlya 1 brigady \n";
proz1=suman/sumf;
std::cout << std::setiosflags(std::ios::scientific); 
std::cout << std::setw(3)<< std::setprecision(1);
std::cout << "Rezultat:" << proz1 ; 
getchar();

std::cout << " Nahodim srednyuyu proizvoditelnost' truda dlya 2 brigady \n";
proz2=sumif/sumit;
std::cout << setiosflags(std::ios::scientific); 
std::cout << std::setw(3)<< std::setprecision(1);
std::cout << "Rezultat:" << proz2;
getchar();

std::cout << "Nahodim srednyuyu proizvoditelnost' truda obeih brigad \n";
sumsequence=summy/summ;
std::cout << std::setiosflags(std::ios::fixed); 
std::cout << std::setw(1)<< std::setprecision(4);
std::cout << "Rezultat:" << sumsequence;
getchar();



std::cout << "Promezhutochnye dispersii dlya 1 brigady \n" << ix1-proz1 
<<ix2-proz1
<<ix3-proz1
<<ix4-proz1;
getchar();

std::cout <<"Promezhutochnye dispersii dlya 2 brigady \n" <<ix1-proz2
<<ix2-proz2
<<ix3-proz2
<<ix4-proz2;
getchar();

std::cout <<" Promezhutochnaya dispersiya mi \n" <<ix1-sumsequence
<<ix2-sumsequence
<<ix3-sumsequence
<<ix4-sumsequence;
getchar();

double onegr, twogr;
std::cout << " Dispersiya 1 brigady \n";
std::cout << "Rezultat: \n";
onegr = pow (2,((ix1-proz1)*f1)+((ix2-proz1)*f2)+((ix3-proz1)*f3)+((ix4-proz1)*f4))/sumf;
std::cout << onegr;
getchar();

std::cout << " Dispersiya 2 brigady \n";
std::cout << "Rezultat: \n";
twogr = pow (2,((ix1-proz2)*f1)+((ix2-proz2)*f2)+((ix3-proz2)*f3)+((ix4-proz2)*f4))/sumif;
std::cout << twogr;
getchar();

return 0;
}
}

double stat()
{
    {            

char name1[64], name2[64], name3[64];
float tovb1, tovb2, tovb3;
float tovt1, tovt2, tovt3;
float iq1, iq2, iq3;
float ip1, ip2, ip3;
float sum1, sum2;
float dellall;
float indcen;
float indtov;
float del1, del2, del3;
system ("cls");
printf("1. Vvedite nazvanie produkta \n");  
scanf_s("%s", name1);
printf("1. Vvedite bazisnyi tovarooborot \n");
scanf_s("%f", &tovb1);
printf("1. Vvedite tekushyi tovarooborot \n");
scanf_s("%f", &tovt1);
printf("1. Vvedite indeks obyema produkcii \n");
scanf_s("%f", &iq1);
printf("1. Vvedite indvidualnyi indeks \n");
scanf_s("%f", &ip1);

printf("2. Vvedite nazvanie produkta \n"); 
scanf_s("%s", name2);
printf("2. Vvedite bazisnyi tovarooborot \n");
scanf_s("%f", &tovb2);
printf("2. Vvedite tekushyi tovarooborot \n");
scanf_s("%f", &tovt2);
printf("2. Vvedite indeks obyema produkcii \n");
scanf_s("%f", &iq2);
printf("2. Vvedite indvidualnyi indeks \n");
scanf_s("%f", &ip2);


printf("3. Vvedite nazvanie produkta \n");
scanf_s("%s", name3);
printf("3. Vvedite bazisnyi tovarooborot \n");
scanf_s("%f", &tovb3);
printf("3. Vvedite tekushyi tovarooborot \n");
scanf_s("%f", &tovt3);
printf("3. Vvedite indvidualnyi indeks \n");
scanf_s("%f", &iq3);
printf("3. Vvedite indvidualnyi indeks \n");
scanf_s("%f", &ip3);

printf("------------------------------------------------------| \n");
printf("|Tovar   |bazisnyi|tekushyi|       |         |  Q1/IP | \n");
printf("|        | tovarooborot    |       |         |        | \n");
printf("|        |                 |   iq  |   ip    |        | \n");
printf("|--------|--------|--------|-----------------|--------| \n");
printf("|%8s     |%4.1f   |%4.1f   | %2.2f | %2.3f   | %2.3f  | \n",name1,tovb1,tovt1,iq1,ip1, del1=tovt1/ip1);
printf("|%8s     |%4.1f   |%4.1f   | %2.2f | %2.3f   | %2.3f  | \n",name2,tovb2,tovt2,iq2,ip2, del2=tovt2/ip2);
printf("|%8s     |%4.1f   |%4.1f   | %2.2f | %2.3f   | %2.3f  | \n",name3,tovb3,tovt3,iq3,ip3, del3=tovt3/ip3);
printf("------------------------------------------------------| \n");
printf("| summa  |        |        |       |         |        | \n");
printf("|        |%4.1f   |%4.1f   |       |         |%4.1f   | \n", del1=tovb1+tovb2+tovb3, sum2=tovt1+tovt2+tovt3, dellall=del1+del2+del3);
printf("|-----------------------------------------------------| \n");
getchar();

system("cls");

std::cout << " Nahodim obshsiy indeks tovarooborota: \n";
indtov = sum2/sum1;
std::cout << std::setiosflags(std::ios::scientific); 
std::cout << std::setw(1)<< std::setprecision(4);   
std::cout << "Rezultat:" << indtov ;
getchar();


system("cls");
  std::cout <<" Nahodim obshsiy index cen: \n";
indcen = sum2/dellall;
std::cout << std::setiosflags(std::ios::scientific); 
std::cout << std::setw(1)<< std::setprecision(4);   
std::cout << "Rezultat:" << indcen ;
getchar();

float indfiz;    
    
    system("cls");
std::cout << "Nahodim obshsiy indeks fizicheskogo obyema produkcii \n";
indfiz=indtov/indcen;
 std::cout << std::setiosflags(std::ios::scientific); 
std::cout << std::setw(1)<< std::setprecision(4);  
std::cout << "Rezultat:" << indfiz ;
getchar();

return 0;
}
}

double x2, x1,  x3, x4,  y;
int temp ()
 
 
     {     
double c1, c2, c3, c4, d1, d2, d3, d4;
double tbaz1, tbaz2, tbaz3, tbaz4;
double tcep1, tcep2, tcep3, tcep4;
double tpr1, tpr2, tpr3, tpr4;
double tprc1, tprc2, tprc3, tprc4;

 system("cls");
 

    
while(1)    
{
std::cout << "Vvedite kolichestvo realizovanoi produkzii za sentjabr: \n";
std::cout << std::setw(2) << std::setprecision(2); 
std::cin >>  y  ;
if (y<0)
{
std::cout <<" \n Vvod otricatelnyh chisel nedopustim";
continue;
}
if (y>0)


std::cout << " Vvedite kolichestvo realizovanoi produkzii za oktjabr: \n";
std::cout << std::setw(2) << std::setprecision(2);
std::cin >> x1   ;
if (x1<0)
{
std::cout <<" \n Vvod otricatelnyh chisel nedopustim";
continue;
}
if (x1>0)


std::cout <<" Vvedite kolichestvo realizovanoi produkzii za noyabr: \n";
std::cout << std::setw(2)<< std::setprecision(2); 
std::cin >>  x2  ;
if (x2<0)
{
std::cout <<" \n Vvod otricatelnyh chisel nedopustim";
continue;
}
if (x2>0)

std::cout <<" Vvedite kolichestvo realizovanoi produkzii za dekabr: \n";
std::cout << std::setw(2)<< std::setprecision(2); 
std::cin >>  x3 ;
if (x3<0)
{
std::cout <<" \n Vvod otricatelnyh chisel nedopustim";
continue;
}
if (x3>0)

std::cout << " Vvedite kolichestvo realizovanoi produkzii za yanvar: \n" << std::cout << std::setw(2)<< std::setprecision(2); 
std::cin >> x4 ;

if (x4<0)
{

    std::cout <<" \n Vvod otricatelnyh chisel nedopustim";
continue;
}
if (x4>0)
goto j;
}


j:;  
system("cls");         
  std::cout << " nahodim bazisnyi absolyutnyi prirost: \n";
  c1=x1-y, c2=x2-y, c3=x3-y, c4=x4-y;
  std::cout << std::setiosflags(std::ios::scientific); 
  std::cout << "Rezultat:" << "\n" << c1 << std::setw(3)<< std::setprecision(1) << "\n" << c2 << std::setw(3)<< std::setprecision(1) <<"\n" << c3 << std::setw(3)<< std::setprecision(1) <<"\n" << c4 << std::setw(3)<< std::setprecision(1)<< "\n" ;  
  getchar();
  
  
  std::cout << " nahodim cepnoi absolyutnui prirost: \n";
  d1=x1-y, d2=x2-x1,d3=x3-x2, d4=x4-x3;
  std::cout << std::setiosflags(std::ios::scientific); 
  std::cout << "Rezultat:" << "\n" << d1 <<std::setw(3)<< std::setprecision(1) << "\n" << d2<<std::setw(3)<< std::setprecision(1) << "\n" << d3 <<std::setw(3)<< std::setprecision(1) << "\n" << d4 <<std::setw(3)<< std::setprecision(1) << "\n" ;
  getchar();

    
system("cls");    
    
std::cout << " nahodim bazisnyi temp rosta: \n";
    tbaz1=(x1/y)*100, tbaz2=(x2/y)*100, tbaz3=(x3/y)*100, tbaz4=(x4/y)*100;
std::cout << std::setiosflags(std::ios::scientific); 
    std::cout << "Rezultat:" << "\n" << tbaz1 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tbaz2 << "%" <<std::setw(3)<< std::setprecision(1) << "\n" << tbaz3 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tbaz4 <<std::setw(3)<< std::setprecision(1) << "%" << "\n"  ;
getchar();      
system("stop");    
    std::cout << " nahodim cepnoi temp rosta: \n";
    tcep1=(x1/y)*100, tcep2=(x2/x1)*100, tcep3=(x3/x2)*100, tcep4=(x4/x3)*100;
std::cout << std::setiosflags(std::ios::scientific); 
    std::cout << "Rezultat:" << "\n" << tcep1 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tcep2 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tcep3 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tcep4 <<std::setw(3)<< std::setprecision(1) << "%" << "\n";
getchar();

    system("cls");
    
std::cout << " nahodim bazisnui temp prirosta: \n";
tpr1= tbaz1-100, tpr2=tbaz2-100, tpr3=tbaz3-100, tpr4=tbaz4-100;
std::cout << std::setiosflags(std::ios::scientific); 
std::cout << "Rezultat:" << "\n" << tpr1 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tpr2 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tpr3 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tpr4 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" ;
getchar();

std::cout << " nahodim cepnoi temp prirosta: \n";
tprc1= tcep1-100, tprc2=tcep2-100, tprc3=tcep3-100, tprc4=tcep4-100;
std::cout << std::setiosflags(std::ios::scientific); 
std::cout << "Rezultat:" << "\n" << tprc1 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tprc2 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tprc3 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" << tprc4 <<std::setw(3)<< std::setprecision(1) << "%" << "\n" ;
getchar();


    double aproc;
system("cls");    
std::cout << " nahodim absolyutnoe znachenie odnogo procenta prirosta: \n";
aproc= d1/tprc1;
std::cout << std::setiosflags(std::ios::scientific); 
std::cout <<std::setw(1)<< std::setprecision(3); 
std::cout <<"Rezultat:" << "\n" << aproc;

getchar();    
    system("cls");  
    double midt;
    int n;    
    n=5;
    std::cout << "sredniy temp rosta: \n ";

    
midt=pow(n-1,sqrt(d1*d2*d3*d4));
std::cout << std::setiosflags(std::ios::scientific); 
std::cout << std::setw(3)<< std::setprecision(2);
std::cout <<"Rezultat:" << "\n" <<     midt ;
getchar();

return 0;
}

Вылазят вот такие неприятные варнинги
Цитата
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(38): warning C4700: использована неинициализированная локальная переменная "f1"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(40): warning C4700: использована неинициализированная локальная переменная "fi1"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(43): warning C4700: использована неинициализированная локальная переменная "ix2"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(45): warning C4700: использована неинициализированная локальная переменная "f2"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(47): warning C4700: использована неинициализированная локальная переменная "fi2"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(50): warning C4700: использована неинициализированная локальная переменная "ix3"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(52): warning C4700: использована неинициализированная локальная переменная "f3"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(54): warning C4700: использована неинициализированная локальная переменная "fi3"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(65): warning C4700: использована неинициализированная локальная переменная "m1"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(67): warning C4700: использована неинициализированная локальная переменная "m2"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(69): warning C4700: использована неинициализированная локальная переменная "m3"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(71): warning C4700: использована неинициализированная локальная переменная "m4"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(71): warning C4700: использована неинициализированная локальная переменная "ix4"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(71): warning C4700: использована неинициализированная локальная переменная "fi4"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(71): warning C4700: использована неинициализированная локальная переменная "f4"
1>c:\documents and settings\администратор\мои документы\visual studio 2010\projects\dipl1\dipl1\dipl1.cpp(202): warning C4700: использована неинициализированная локальная переменная "sum1"


Функция main еще не сделана но не в этом суть. Помогите разобратся с этой проблемой пожалуста


Модератор: подправил двойное сообщение

Это сообщение отредактировал(а) bsa - 3.2.2012, 11:08
PM MAIL   Вверх
boostcoder
Дата 2.2.2012, 21:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 20
Всего: 110



компилятор уже и на русском научился говорить, лишь бы ты его понял однажды smile 
PM WWW   Вверх
feodorv
Дата 2.2.2012, 22:22 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 12
Всего: 45



Цитата(Mello @  2.2.2012,  21:29 Найти цитируемый пост)
Вылазят вот такие неприятные варнинги

Очень хорошо, что Вы их не игнорируете)))


Присмотритесь внимательно:
Цитата(Mello @  2.2.2012,  21:29 Найти цитируемый пост)
scanf_s("%i", &ix1);

Цитата(Mello @  2.2.2012,  21:29 Найти цитируемый пост)
scanf_s("%d", f1);

На ix1 предупреждения нет. А на f1 уже есть. Как Вы думаете, почему?


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
Mello
Дата 4.2.2012, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 30.1.2012

Репутация: нет
Всего: нет



Цитата

Присмотритесь внимательно:Цитата(Mello @  2.2.2012,  21:29 )
scanf_s("%i", &ix1);

Цитата(Mello @  2.2.2012,  21:29 )
scanf_s("%d", f1);


На ix1 предупреждения нет. А на f1 уже есть. Как Вы думаете, почему?


Понятно, все изза моей рассеяности, с этим я уже разобрался))
Но вот еще одна беда( вылазит runtime-ошибка

Необработанное исключение в "0xfefefefe" в "dipl1.exe": 0xC0000005: Нарушение прав доступа при чтении "0xfefefefe".
Ругается вот на эту строку

scanf_s("%s", name1);
PM MAIL   Вверх
feodorv
Дата 5.2.2012, 04:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 12
Всего: 45



Цитата(Mello @  4.2.2012,  22:47 Найти цитируемый пост)
Ругается вот на эту строку

См. здесь smile 


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0803 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.