Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.03.2010, 13:29   #1
Krumyura
Пользователь
 
Регистрация: 03.03.2010
Сообщений: 36
Вопрос Ошибка инициализация

Код:
#include "stdafx.h"
#include <fstream>
#include "iostream.h"
#include <vector>
#include "windows.h"
#include <math.h>
#define lMas 10 // довжина масиву
using namespace std;

const char * outName = "output.txt";


char* Rus(const char* text);
void main()
{
 ofstream fout(outName);

 int n;      
 int i;
 double sum = 0;
 double mi = 999999999.0;
 int f = -1,t = -1;
 int vubir;
 
 cout<<Rus("________________________________________________________________________________");
 cout<<Rus("                             Курсова робота                                     ");
 cout<<Rus("                          студента групи К 4-2                                  ");
 cout<<Rus("                            Кримовського Юрiя                                   ");
 cout<<Rus("________________________________________________________________________________");
 cout<<Rus("                                                                                ");
 
 masivInitialization:
	float masiv[lMas] = {-9, -0.7, -0.5, 3.5, -2, 9, 0.2, -0.2, 0.3, 8}; // ініціалізація масиву

 menu:
	printf("\n\n");
    printf("1. Vvestu dani samostino.\n");
	printf("2. Vukonatu inicializaciyu.\n");
	scanf("%i", &vubir);
	switch(vubir) // виконання дії згідно введеного варіанту
	{
		case 1: 
		{
 cout<<Rus("Введите длинну масива:\n");
 cin >> n;
 }
		} 
	case 2: goto masivInitialization;

		goto menu; // повертаємося на початок програми
	
 vector <double> ms(n),ansms;
 for(i = 0; i < n; i++)
 {
  cout << "ms[" << i + 1 << "] = ";
  cin >> ms[i];
  mi = min(mi, ms[i]);
 }
 for(i = 0; i < n; i++)
  if(ms[i] < 0)
  {
   if(f == -1)
    f = i;
   else if(t == -1)
    t = i;
  }
 for(i = f + 1; i < t; i++)
  sum += ms[i];
 for(i = 0; i < n; i++)
  if(ms[i] <= 1.0 && ms[i] >= -1.0)
   ansms.push_back(ms[i]);
 for(i = 0; i < n; i++)
  if(ms[i] > 1.0 || ms[i] < -1.0)
   ansms.push_back(ms[i]);
  cout<<Rus("                                                                                ");
  cout <<Rus("----------------------------------Результат-------------------------------------      ")<< endl;;

 fout <<"1) " << mi << endl;
 fout <<"2) " << sum << endl;
 fout <<"3) ";
 cout<<Rus("                                                                                ");
 for(i = 0; i < n; i++)
  fout << ansms[i] << " ";
 cout<<Rus("                                                                                ");
 cout <<Rus("1)Мiнiмальний елемент масиву:  ") << mi << endl;
 cout<<Rus("                                                                                ");
 cout << Rus("2)Cумa елементiв: " )<< sum << endl;
 cout<<Rus("                                                                                ");
 cout<< Rus("3)Елементи модуль яких не перевищує 1, а потiм всi iншi: ");
 
 for(i = 0; i < n; i++)
  cout << ansms[i] << " ";
 cout<<Rus("                                                                                                ");
 cout<<Rus("                                                                                                 ");

	

 
}

char bufrus[256];
char* Rus(const char* text){

	CharToOem(text,bufrus);
	return bufrus;}
--------------------Configuration: S_klavi_na_ekran - Win32 Debug--------------------
Compiling...
S_klavi_na_ekran.cpp
D:\Documents and Settings\Администратор\Рабочий стол\Новая папка (2)\S_klavi_na_ekran\S_klavi_na_ekr an.cpp(36) : warning C4305: 'initializing' : truncation from 'const double' to 'float'
D:\Documents and Settings\Администратор\Рабочий стол\Новая папка (2)\S_klavi_na_ekran\S_klavi_na_ekr an.cpp(36) : warning C4305: 'initializing' : truncation from 'const double' to 'float'
D:\Documents and Settings\Администратор\Рабочий стол\Новая папка (2)\S_klavi_na_ekran\S_klavi_na_ekr an.cpp(36) : warning C4305: 'initializing' : truncation from 'const double' to 'float'
D:\Documents and Settings\Администратор\Рабочий стол\Новая папка (2)\S_klavi_na_ekran\S_klavi_na_ekr an.cpp(36) : warning C4305: 'initializing' : truncation from 'const double' to 'float'
D:\Documents and Settings\Администратор\Рабочий стол\Новая папка (2)\S_klavi_na_ekran\S_klavi_na_ekr an.cpp(51) : error C2046: illegal case
Error executing cl.exe.

S_klavi_na_ekran.exe - 1 error(s), 4 warning(s)





Помогите чем сможете.

Последний раз редактировалось Krumyura; 22.03.2010 в 13:35.
Krumyura вне форума Ответить с цитированием
Старый 22.03.2010, 13:46   #2
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

case 2: находится за пределами тела switch.
Вообще со всеми этими goto полный ужас и ничего не понятно. Забудьте о нем на всю оставшуюся жизнь!
А в switch еще скобки выровняйте, чтоб в дальнейшем на такие ошибки по невнимательности не провоцировать.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 22.03.2010, 14:08   #3
Krumyura
Пользователь
 
Регистрация: 03.03.2010
Сообщений: 36
По умолчанию

Цитата:
Сообщение от Гром Посмотреть сообщение
case 2: находится за пределами тела switch.
Вообще со всеми этими goto полный ужас и ничего не понятно. Забудьте о нем на всю оставшуюся жизнь!
А в switch еще скобки выровняйте, чтоб в дальнейшем на такие ошибки по невнимательности не провоцировать.
Спасибо большое)))
Krumyura вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Инициализация Krumyura Общие вопросы C/C++ 5 20.03.2010 23:37
Инициализация Glut windzor Общие вопросы .NET 2 07.02.2010 12:17
Инициализация DirectX Pedro Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 30.09.2009 21:06
инициализация массива Arcueid1691 Паскаль, Turbo Pascal, PascalABC.NET 2 01.06.2009 02:36
Инициализация окна Anny Общие вопросы Delphi 9 13.03.2007 11:48