Otto Khatamov
Otto Khatamov

Помогите пожалуйста срочно программу дописать надо

Условие: Дан ряд подряд записанных двузначных чисел 1011121314151617181920....949596979899 Найти какая !!!ЦИФРА!!!! стоит на позиции n принимающем значения от 1 до 180??? ИСПОЛЬЗОВАТЬ ТОЛЬКО УСЛОВНЫЙ ОПЕРАТОР, циклы только для оформления программы.
Текст программы:

#include
#include
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "rus");
int p, n;

char ch;
do {

cout<<"Введите позицию цифры в последовательности двузначных чисел ";
cin>>n;
while (n<1 || n>180)
{
cout<<"Позиция цифры не может быть "<>n;
}
p=n%2;

if (p==0)

{p=n -1; p/=2; p=abs(p);

cout<<"На позиции "<> ch;
} while ( ch == 'y' || ch == 'Y' );

return 0;
}

Не могу понять где ошибка. Программа ругается на цифру 9 и начиная с 20-ой позиции выводит чушь. Помогите пожалуйста разобраться, заранее огромное человеческое спасибо!!!

Программа неправильно скопировалась, вот нормальная программа:

#include
#include
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "rus");
int p, n;

char ch;
do {

cout<<"Введите позицию цифры в последовательности двузначных чисел ";
cin>>n;
while (n<1 || n>180)
{
cout<<"Позиция цифры не может быть "<>n;
}
p=n%2;

if (p==0)

{p=n -1; p/=2; p=abs(p);

cout<<"На позиции "<> ch;
} while ( ch == 'y' || ch == 'Y' );

return 0;
}

ОПЯТЬ Неправильно скопировалось)) )

#include
#include
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "rus");
int p, n;
char ch;
do {

cout«"Введите позицию цифры в последовательности двузначных чисел ";
cin»n;
while (n<1 || n>180)
{
cout«"Позиция цифры не может быть "«n«" !!!Введите позицию от 1 до 180: ";
cin»n;
}
p=n%2;
if (p==0)
{p=n -1; p/=2; p=abs(p);
cout«"На позиции "«n«" находится цифра "«p«endl;}
else
{
p=n/20+1;p%=2; p=abs(p);
cout«"На позиции "«n«" находится цифра "«p«endl;}

cout « "Выполнить программу еще раз? (y/n): ";
cin.clear();
cin.sync();
cin » ch;
} while ( ch == 'y' || ch == 'Y' );
return 0;
}

ЮД
Юлия Дубровина

Если n - нечетное, то ответ будет сумма цифр, полученных из n делить на 10 без остатка
Иначе ответ будет n остаток от деления на 10 минус 1 от результата.

Надежда
Надежда

Простите, немного не по теме ответ. Но для корректной передачи своего кода, и для более грамотного изложения вопроса лучше использовать специальные севрисы публикации кода типа http://pastebin.com/

Похожие вопросы
Помогите дописать программу на паскале
Помогите дописать программу! срочняк
помогите дописать программу
Помогите с С++ (дописать программу) (учим си)
Помогите дописать сайт
помогите дописать код на С++
Помогите дописать скрипт
Помогите дописать програмку=))
[Ассемблер] Помогите дописать комментарии к программе
Дописать программу на Pascal