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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.11.2011, 17:55   #1
neww
Новичок
Джуниор
 
Регистрация: 08.11.2011
Сообщений: 4
По умолчанию простенькая прога на c++

задачка такая:
Дано натуральное число n (n£9999). Верно ли, что это число содержит ровно три одинаковые цифры, как, например, числа 6667, 5455, 0001 и т. д
код на паскале получается, а нужно на с++, помогите пжл!!
neww вне форума Ответить с цитированием
Старый 08.11.2011, 18:04   #2
JuniorProger
Форумчанин
 
Регистрация: 16.09.2011
Сообщений: 114
По умолчанию

А что сложного на С++ перевести?
JuniorProger вне форума Ответить с цитированием
Старый 08.11.2011, 18:17   #3
neww
Новичок
Джуниор
 
Регистрация: 08.11.2011
Сообщений: 4
По умолчанию

с++ только начинаю осваивать, а прога нужна срочно именно в нём = \ поэтому и обратился к вам с просьбой
neww вне форума Ответить с цитированием
Старый 08.11.2011, 18:21   #4
JuniorProger
Форумчанин
 
Регистрация: 16.09.2011
Сообщений: 114
По умолчанию

Кинь код на паскале
JuniorProger вне форума Ответить с цитированием
Старый 08.11.2011, 18:28   #5
neww
Новичок
Джуниор
 
Регистрация: 08.11.2011
Сообщений: 4
По умолчанию

program f;
label 1;
var p,i,j,n:integer;
s:string;
bb:boolean;

begin
1:write('Pi= '); readln(p);
if p>9999 then begin writeln('ERROR: Pi < 9999'); goto 1 end;

str(p,s);
bb:=false;
for i:=1 to length(s) do begin n:=0;
for j:=1 to length(s) do
if i<>j then
if s[i]=s[j] then inc(n);
if n=2 then bb:=true;
end;

writeln(bb);

readln;
end.
neww вне форума Ответить с цитированием
Старый 08.11.2011, 19:47   #6
JuniorProger
Форумчанин
 
Регистрация: 16.09.2011
Сообщений: 114
По умолчанию

Вот набросал на скорую руку

Код:
#include <string>
#include <iostream>
using namespace std;


int main(int argc, char* argv[])
{
	int p, n, j;

	cout<<"Pi = ";
	cin>>p;

	while (p>9999){
		cout<<"ERROR: Pi > 9999"<<endl;
		cout<<"Pi = ";
		cin>>p;
	};

	char* s = new char[4];
	itoa(p, s, 10);

	bool bb = false;
	int i = 0;
	while ((i<4)&&(bb == false)){
		n = 0;
		int j = 0;
		while ((j<4)&&(bb == false)){
			if (i != j){
				if (s[i] == s[j]) n++;
				if (n == 2) bb = true;
			};
			j++;
		};
		i++;
	};
	cout<<bb;
	cin>>n;
	
	return 0;
};
Но она не съест 0001, 0100, 0020 и т.п. так как считывается число (как в твоем варианте). Поэтому 0001 будет считано как 1, 0200 - как 200 и т.п. А тут, как видишь, число нулей меньше чем было введено. Обработай этот момент и будет все отлично работать.
JuniorProger вне форума Ответить с цитированием
Старый 08.11.2011, 20:10   #7
neww
Новичок
Джуниор
 
Регистрация: 08.11.2011
Сообщений: 4
По умолчанию

огромное спасибо! а вместо itoa можно использовать что-нибудь другое? у меня по ходу не поддерживается.. сижу с ubuntu
neww вне форума Ответить с цитированием
Старый 08.11.2011, 20:25   #8
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

Цитата:
Сообщение от neww Посмотреть сообщение
огромное спасибо! а вместо itoa можно использовать что-нибудь другое? у меня по ходу не поддерживается.. сижу с ubuntu
Код:
#include <iostream>
#include <sstream>
using namespace std;
...
    int i;
    ostringstream s;
    string str;
    s << i;
    str = s.str();
...
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
простенькая прога: разложения в ряд синуса, косинуса и их произведения Тимоша Паскаль, Turbo Pascal, PascalABC.NET 1 24.12.2010 21:46
простенькая прога: разложения в ряд синуса, косинуса и их произведения Тимоша Помощь студентам 0 24.12.2010 20:57
простенькая прога по динамическим матрицам fatefighter Помощь студентам 1 06.11.2010 02:15
Моя простенькая прога. step@n Gamedev - cоздание игр: Unity, OpenGL, DirectX 11 19.11.2009 15:17
Простенькая задача на С KoVeN Помощь студентам 4 25.12.2008 08:15