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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.03.2011, 22:52   #1
SKyzZz
Пользователь
 
Регистрация: 14.02.2011
Сообщений: 43
Смущение Тут вопщем рот 1_3

Вот такие вот ошибки, да еще по-мелочи забыл, имена входного и выходного файлов спросить у пользователя как сдесь + кодировка рот 13 как в основном коде, помогите.

Код:
FILE *f_in, *f_out; // input and utput files
	char filename_in[100], filename_out[100]; // files name
	
	cout<<"Input name of the file to convert ";
	cin>>filename_in;
	cout<<"Input name of the file to result ";
	cin>>filename_out;
	char text[20000], words[1000][20]; // arrays for text and words
	
	int i = 0, ch; // i - standard counter, ch - for read chars

	f_in = fopen(filename_in, "r"); // read source file

	if ( f_in != NULL ) 
	{
		do
		{
			ch = fgetc(f_in);
			if (ch != EOF)
				text[i] = char(ch);
			else text[i] = '\0'; // end of file = end of string
			i++;
		}

		while ( ch != EOF );
				
		fclose(f_in);
		cout << "\nFile open succesful\n";
	}
	else cout << "\nError of file read\n";

	i=0;
	int letters = 0, word_num = 0, symb_in_word = 0;
Цитата:
1>c:\documents and settings\skyzzz\мои документы\visual studio 2010\projects\22\22\1.cpp(53): warning C4804: '<=' : unsafe use of type 'bool' in operation
1>c:\documents and settings\skyzzz\мои документы\visual studio 2010\projects\22\22\1.cpp(53): warning C4804: '<=' : unsafe use of type 'bool' in operation
1>ManifestResourceCompile:
1> All outputs are up-to-date.
1>1.obj : error LNK2019: unresolved external symbol "bool __cdecl firstHalf(char)" (?firstHalf@@YA_ND@Z) referenced in function "void __cdecl rot13(char * const,int)" (?rot13@@YAXQADH@Z)
1>C:\Documents and Settings\SKyzZz\Мои документы\Visual Studio 2010\Projects\22\Debug\22.exe : fatal error LNK1120: 1 unresolved externals

Код:
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <cctype>
#include <clocale>

using namespace std;

bool alphabetic (char ch);

void fillArray(char array[], int& size);

void rot13(char array[], int size);

bool firstHalf(char ch);

const int MAX = 50000;

char array[MAX];

int size = 0;


int main ()
{

char score[MAX];
int size;

fillArray (score,size);

rot13 (score,size);

return 0;
}

void fillArray (char array[], int& size)
{
   char ch;
   cout << "Enter " << MAX << " characters.\n";

    for (int i = 0; i < MAX; i++)
   {
        cin >>array [i];
         ch  = array [i];
       cout<<array[i]<<endl;
   }

  }

bool alphabetic (char ch)
{
   if (('a'<=ch<='z')||('A'<=ch<='Z'))
  return true;
   else
     return false;


}

void rot13 (char array[], int size)
{
char ch;

for(int i =0;i < size && alphabetic(array[i]);i++)
          {
            if(firstHalf(array[i]))
             {
              ch= array[i]+13;
             }
            else
             {
              ch= array[i]-13;
             }
   cout<<ch;
}


}

Последний раз редактировалось Stilet; 23.03.2011 в 10:11.
SKyzZz вне форума Ответить с цитированием
Старый 23.03.2011, 08:47   #2
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,068
По умолчанию

Так нельзя писать. Точнее можно, но результат будет не тот, который ожидали
Код:
if (('a'<=ch<='z')||('A'<=ch<='Z'))
('a'<=ch<='z') в итоге превратится в следующее:
сначала выполнится проверка 'a'<=chкоторая соответственно вернет 0, если код символа 'a' больше ch или 1(а может даже и не единицу) в противном случае. Ну а потом уже выполнится проверка 0<='z' или 1<='z' соответственно.
Так что расписывайте как-то так:
Код:
if ((('a' <= ch) && ('z' >= ch)) || (('A' <= ch)&&('Z' >=ch)))
pu4koff вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
чето тут С чето тут Seodaiter Общие вопросы C/C++ 1 01.08.2009 22:25
А Фидошники тут водятся? Goblin Свободное общение 15 11.01.2009 11:36
Тут помощь jone Фриланс 1 09.01.2009 22:47
где тут ошибка? Fogg Общие вопросы C/C++ 5 18.12.2008 09:34
Тут такая проблема... 2pizza Общие вопросы C/C++ 2 16.07.2008 13:00