-7 / 1 / 0
Регистрация: 01.04.2019
Сообщений: 14

Определить какие десятичные цифры не входят в число

01.04.2019, 22:11. Показов 1487. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Переведите, пожалуйста, с Паскаля на C++
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
uses crt;
var w,n:longint;
    m:set of byte;
    i,c,k:byte;
begin
clrscr;
write('w=');
readln(w);
n:=w;
m:=[];
while n>0 do
 begin
  c:=n mod 10;
  m:=m+[c];
  n:=n div 10;
 end;
writeln('В число ',w,' не входят цифры');
for i:=0 to 9 do
if not(i in m) then write(i,' ');
readln
end.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.04.2019, 22:11
Ответы с готовыми решениями:

Массивы: определить, какие различные цифры входят в целое число
C++ Массивы. Использовать только стандартные и простые выражения. Каждую строку желательно комментировать 1. Какие различные цифры...

Определить, какие различные цифры входят в целое число
Как можно написать данную программу попроще, а это эта не особо понятная? var n: longint; digits: array of byte; ...

дано четырехзначное число . определить а)входят ли в него цифры 2 или 7. б) входят ли в него цифры 3,6 и 9
дано четырехзначное число . определить а)входят ли в него цифры 2 или 7. б) входят ли в него цифры 3,6 и 9

9
Модератор
10234 / 5522 / 3373
Регистрация: 17.08.2012
Сообщений: 16,881
02.04.2019, 04:52
Так себе программа.

Не работает при w ≤ 0 (лечится применением цикла repeat..until вместо while).
Переменная "c", в общем-то, не нужна.

Немного подрихтовал: применил цикл с постусловием, сделал так, чтобы программа работала со всеми целыми числами, вместо добавления в изначально пустое множество сделал удаление из заранее заданного множества, изменил вывод множества, убрал ненужные переменные:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <iterator>
#include <set>
 
using namespace std;
 
int n;
 
int main()
{
  set<int> m {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};  
  cout<<"n = ";
  cin>>n;
  cout<<"В число "<<n<<" не входят цифры:\n";
  n = abs(n);
  do m.erase(n % 10); while (n > 0, n /= 10);
  copy(m.begin(), m.end(), ostream_iterator<int>(cout, " "));
  cin.get();
  return 0;
}
0
 Аватар для FFPowerMan
2144 / 1224 / 507
Регистрация: 11.10.2018
Сообщений: 6,183
02.04.2019, 06:58
Лучший ответ Сообщение было отмечено bananapen как решение

Решение

Что-то cpp.sh не понравился Ваш код:
C++
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
#include <iostream>
#include <iterator>
#include <set>
using namespace std;
 
int n;
 
int main()
{
  set<int> m{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};  
  cout << "n = ";
  cin >> n;
  
  n = abs(n);
  do
  {
      m.erase(n % 10);
      n /= 10;
  }
  while(n > 0);
  
  cout << "В число " << n << " не входят цифры:\n";
  copy(m.begin(), m.end(), ostream_iterator<int>(cout, " "));  
  cin.get();
  return 0;
}
1
Модератор
10234 / 5522 / 3373
Регистрация: 17.08.2012
Сообщений: 16,881
02.04.2019, 13:25
FFPowerMan, это старая версия моей программы. Возьмите лучше код из сообщения #2 - он лаконичнее, и в C++ Shell кое-как работает (в options выбрать в Standard Input опцию Text, и напечатать число в текстовом окошечке).

Вероятно, C++ Shell либо уже старенькая, либо где-то урезанная. У меня есть подозрения, что C++ Shell не вполне верно работает с библиотеками iterator.h и / или set.h.

Воспользуйтесь сайтом Online C++ Compiler: https://www.onlinegdb.com/online_c++_compiler. В этой онлайн-среде всё, что я написал, прекрасно работает.

Если Вам нужна именно старая версия программы в C++ Shell, то я пас. По некоторым (не зависящим от самого C++) причинам, C++ мне лично, мягко говоря, противен, и я пишу что-либо на C++ крайне редко. Объективно он не хуже и не лучше десятка других языков, на которых я могу хоть что-то написать, да что там говорить, отличный язык. Но субъективно... Ну вот написал я эту программу, можно сказать, через силу - и то хорошо. А разбираться, почему эту программу не пережёвывает какой-то там онлайн-робот - это уж увольте.
1
-7 / 1 / 0
Регистрация: 01.04.2019
Сообщений: 14
02.04.2019, 13:51  [ТС]
спасибо
0
 Аватар для FFPowerMan
2144 / 1224 / 507
Регистрация: 11.10.2018
Сообщений: 6,183
02.04.2019, 15:58
Цитата Сообщение от Cyborg Drone Посмотреть сообщение
Возьмите лучше код из сообщения #2
- ну так я оттуда и брал. То, что у Вас в скобках в while написано - он это вообще понять не может.
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
02.04.2019, 16:19
это не перевод, просто вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
using namespace std; 
 
int main()
{ 
    int n, a[10]={0};
    cout << "n="; cin >> n;   
    if(n<0) n=-n;
    
    while (n>0)
      {
        a[n%10]++;        
        n/=10;        
      }    
      
    for (int i = 0; i < 10; i++)
       if (a[i]==0) cout << i << " ";   
      
system("pause");
return 0;
}
0
Модератор
10234 / 5522 / 3373
Регистрация: 17.08.2012
Сообщений: 16,881
03.04.2019, 00:22
FFPowerMan, вот я и говорю, что с этим cpp.sh что-то не то. Запускайте на нормальном компиляторе, хотя бы там, где я указал, или просто установите C++ на Ваш компьютер.

Yetty, в принципе, массив достаточно удобная замена конечному неупорядоченному множеству ("паскалевскому"). Может быть, даже более удобная, чем конечное неупорядоченное мультимножество из C++.
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
03.04.2019, 01:02
Цитата Сообщение от FFPowerMan Посмотреть сообщение
Что-то cpp.sh не понравился Ваш код:
Цитата Сообщение от Cyborg Drone Посмотреть сообщение
вот я и говорю, что с этим cpp.sh что-то не то.
русский текст уберите
1
Модератор
10234 / 5522 / 3373
Регистрация: 17.08.2012
Сообщений: 16,881
03.04.2019, 02:31
Yetty, спасибо.

FFPowerMan, заменил в программе из поста #2
C++
14
  cout<<"Number "<<n<<" does not contain digits:\n";
скормил это дело роботу... И всё чудесным образом заработало. Ну вот откуда мне было знать, что от русского языка у этого C++ Shell происходит помутнение в мозгу?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.04.2019, 02:31
Помогаю со студенческими работами здесь

Определить, входят ли в число: цифры 3 и 7; цифры (4 и 8) или цифра 9
Дано двухзначное число. Определить : а) входят ли в него цифры 3 и 7; б)входят ли в него цифры (4 и 8) или цифра 9. Добавлено через 36...

Определить входят ли в число цифры 2 и 7
Подскажите как определить входят ли в трехзначное число числа 2 и 7.

Определить, входят ли некоторые цифры в число.
нужно написать программу по следующему условию: дано 3-значное число. Определить входят ли в него цифры 3, 6, 9. В итоге программа...

Определить входят ли в число цифры 4 или 7?
Дано трехзначное число. Определить входят ли в него цифры 4 или 7?

Определить, входят ли в четырехзначное число заданные цифры
Помогите решить задачу. Дано четырехзначное число. Определить: а) входят ли в него цифры 2 или 7; б) входят ли в него цифры 3, 6 или...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

Новые блоги и статьи
50 самых полезных примеров кода Python для частых задач
py-thonny 18.06.2025
Эффективность работы разработчика часто измеряется не количеством написаных строк, а скоростью решения задач. Готовые сниппеты значительно ускоряют разработку, помогают избежать типичных ошибок и. . .
C# и продвинутые приемы работы с БД
stackOverflow 18.06.2025
Каждый . NET разработчик рано или поздно сталкивается с ситуацией, когда привычные методы работы с базами данных превращаются в источник бессонных ночей. Я сам неоднократно попадал в такие ситуации,. . .
Angular: Вопросы и ответы на собеседовании
Reangularity 16.06.2025
Готовишься к техническому интервью по Angular? Я собрал самые распространенные вопросы, с которыми сталкиваются разработчики на собеседованиях в этом году. От базовых концепций до продвинутых. . .
Архитектура Onion в ASP.NET Core MVC
stackOverflow 16.06.2025
Что такое эта "луковая" архитектура? Термин предложил Джеффри Палермо (Jeffrey Palermo) в 2008 году, и с тех пор подход только набирал обороты. Суть проста - представьте себе лук с его. . .
Unity 4D
GameUnited 13.06.2025
Четырехмерное пространство. . . Звучит как что-то из научной фантастики, правда? Однако для меня, как разработчика со стажем в игровой индустрии, четвертое измерение давно перестало быть абстракцией из. . .
SSE (Server-Sent Events) в ASP.NET Core и .NET 10
UnmanagedCoder 13.06.2025
Кажется, Microsoft снова подкинула нам интересную фичу в новой версии фреймворка. Работая с превью . NET 10, я наткнулся на нативную поддержку Server-Sent Events (SSE) в ASP. NET Core Minimal APIs. Эта. . .
С днём независимости России!
Hrethgir 13.06.2025
Решил побеседовать, с утра праздничного дня, с LM о завоеваниях. То что она написала о народе, представителем которого я являюсь сам сначала возмутило меня, но дальше только смешило. Это чисто. . .
Лето вокруг.
kumehtar 13.06.2025
Лето вокруг. Наполненное бурями и ураганами событий. На фоне магии Жизни, священной и вечной, неумелой рукой человека рисуется панорама душевного непокоя. Странные серые краски проникают и. . .
Популярные LM модели ориентированы на увеличение затрат ресурсов пользователями сгенерированного кода (грязь -заслуги чистоплюев).
Hrethgir 13.06.2025
Вообще обратил внимание, что они генерируют код (впрочем так-же ориентированы разработчики чипов даже), чтобы пользователь их использующий уходил в тот или иной убыток. Это достаточно опытные модели,. . .
Топ10 библиотек C для квантовых вычислений
bytestream 13.06.2025
Квантовые вычисления - это та область, где теория встречается с практикой на границе наших знаний о физике. Пока большая часть шума вокруг квантовых компьютеров крутится вокруг языков высокого уровня. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru