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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2011, 19:47   #1
alex22527
Пользователь
 
Регистрация: 07.10.2010
Сообщений: 24
По умолчанию Ошибка в с++

Напечатать в возрастающем порядке все цифры,невходящие в запись данного натурального числа.
Можете найти ошибку
#include<string.h>
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
void main()
{ clrscr();
char S1[11]="0123456789";
char S2[15];
int i=0,j;
cout<<"Vvedite chislo: ";
gets(S2);
for(i=0;i<=(strlen(S2)-1);i++)
for(j=0;j<11;j++)
if (S1[j]!=S2[i])
cout<<"\n"<<S1[j];
getch();
}

Vvedite chislo:123
то выдаст
023456789 013456789 012456789
а должен просто
0456789
alex22527 вне форума Ответить с цитированием
Старый 18.05.2011, 20:17   #2
skgwazap
Пользователь
 
Регистрация: 24.11.2010
Сообщений: 40
По умолчанию

Ваш алгоритм проводит проверку 3 раза(для числа 123), то есть по количеству цифр в введенном числе.
Нужно в первом цикле по s1 проверять, есть ли в заданном числе эта цифра, если есть, то переходить к следующей, если нет - выводить
Код:
for (int i=0; i<10; i++)
   if (!Found(s1[i], s2))
      cout << s1[i] << endl;
реализицию Found оставляю на Вас.
skgwazap вне форума Ответить с цитированием
Старый 18.05.2011, 20:25   #3
alex22527
Пользователь
 
Регистрация: 07.10.2010
Сообщений: 24
По умолчанию

skgwazap спасибо большое,но можно условие по другому написать ,а то мы вот такую команду !Found неизучали(
alex22527 вне форума Ответить с цитированием
Старый 19.05.2011, 00:11   #4
skgwazap
Пользователь
 
Регистрация: 24.11.2010
Сообщений: 40
По умолчанию

Цитата:
реализицию Found оставляю на Вас.
Это функция поиска элемента в строке.
int Found(char x, char a[])
Код:
int Found(char x, char a[])
{
   int n=strlen(a);
   for (int i=0; i<n; i++)
      if (a[i]==x)
         return 1;
   return 0;
}

Последний раз редактировалось skgwazap; 19.05.2011 в 00:14.
skgwazap вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Nero - ошибка драйвера DMA. ошибка CRC NecRoMat Софт 5 09.05.2012 01:29
Ошибка run-time Error 1004 общая ошибка ODBC kaval88 Microsoft Office Excel 0 27.02.2011 20:20
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58
Это ошибка Delphi или моя ошибка??? bloodeagle Общие вопросы Delphi 3 12.11.2009 15:26
...Ошибка 101 (net::ERR_CONNECTION_RESET): Неизвестная ошибка... infrared Помощь студентам 0 16.04.2009 17:44