powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Задача по программированию. Где ошибка ?
9 сообщений из 9, страница 1 из 1
Задача по программированию. Где ошибка ?
    #39891431
gera3323
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://acmp.ru/index.asp?main=task&id_task=691

Код: plaintext
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.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
#include <iostream>
#include <fstream>
#include <cstring>

using namespace std;

//#define DEVELOPER

#ifdef DEVELOPER 
 #define R_PATH "C:\\input.txt"
 #define W_PATH "C:\\output.txt"
 #define out cout
 #define in i_file
#else 
 #define R_PATH "input.txt"
 #define W_PATH "output.txt"
 #define in i_file
 #define out o_file
#endif

char *alpha = "ABCEHKMOPTXY0123456789";
const int len_number = 7;

bool check(char *str)
{
   char pattern[ sizeof "CDDDCC" ] = {'\0'};

   for(int i = 0, l = strlen(str), j = 0; i < l && i < len_number; i++)
   {
	   if(strchr(alpha, str[i]) > 0)
	   {
		  if(isalpha(str[i]) > 0) 
		  {
             pattern[j] = 'C';
		  }

		  if(isdigit(str[i]) > 0) 
		  {
		     pattern[j] = 'D';
		  }

		  j++;
	   }
   }

   return strcmp(pattern, "CDDDCC") == 0;
}

int main(void)
{
  ifstream i_file(R_PATH);
  ofstream o_file(W_PATH);

  char buffer[10];

  int k = 0;
  i_file>>k;

  for(int i = 1; i <= k; i++)
  {
     i_file>>buffer;

	 if(check(buffer))
	 {
		 out<<"Yes";
	 }
	 else
	 {
		 out<<"No";
	 } 
  }

  i_file.close();
  o_file.close();

#ifdef DEVELOPER
 return cin.get();
#else
 return 0;
#endif

}



Не принимает ее система. Что не так ?
...
Рейтинг: 0 / 0
Задача по программированию. Где ошибка ?
    #39891433
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gera3323
Не принимает ее система. Что не так ?

Алгоритм с ошибками.
...
Рейтинг: 0 / 0
Задача по программированию. Где ошибка ?
    #39891436
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторДлины строк от 1 до 300
Где ты учел это условие?
...
Рейтинг: 0 / 0
Задача по программированию. Где ошибка ?
    #39891437
gera3323
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

Нигде )
...
Рейтинг: 0 / 0
Задача по программированию. Где ошибка ?
    #39891438
gera3323
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

Есть длина по номеру. Разве этого не достаточно ?
...
Рейтинг: 0 / 0
Задача по программированию. Где ошибка ?
    #39891439
gera3323
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,
Если строка не равна шаблону
CDDDCC, то будет false. Тут нет разницы как длина строки
...
Рейтинг: 0 / 0
Задача по программированию. Где ошибка ?
    #39891441
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
gera3323
Dima T,

Есть длина по номеру. Разве этого не достаточно ?

Что такое "Переполнение буфера" знаешь?
...
Рейтинг: 0 / 0
Задача по программированию. Где ошибка ?
    #39891442
gera3323
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

Да знаю, сейчас переделаю.
...
Рейтинг: 0 / 0
Задача по программированию. Где ошибка ?
    #39891444
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверка у тебя не всегда правильно срабатывает, придумай неправильную входную строку на которой будет Yes.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Задача по программированию. Где ошибка ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]