Войти

Показать полную графическую версию : [решено] Помогите решить задачу по С++


Страниц : [1] 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Spl1t
27-09-2008, 14:54
По заданному натуральному(целому) числу, определить количество цифр и найти их сумму. (http://forum.oszone.net/post-910225-4.html)
По заданному натуральному(целому) числу, определить количество цифр и найти их сумму. Из указаного диапазона n и m (http://forum.oszone.net/post-910288-18.html)
Выполнить инвертирование трех одномерных массивов: А[20], В[10], С[15]. Написать функции: -Заполнение массива числами в диалоговом режиме. -Вывода одномерного массива -Инвертирование одномерного массива. (http://forum.oszone.net/post-915581-35.html)
Определитьдля каждого из трех одномерных массивов : A[45], B[10], C[20] сколько раз в них встретились два подряд идущих нулевых элемента. Написать функции: -Заполнение массива числами в диалоговом режиме. -Вывода одномерного массива. -Определения количества двух подряд идущих нулевых элементов в одномерном массиве. (http://forum.oszone.net/post-912435-27.html)









[hr]
Выдержка из правил форума
Вопросы, в которых нет кода и следов ваших размышлений над поставленной задачей также будут перенесены в закрытую тему - Уголок Ленивого Программиста (http://forum.oszone.net/thread-223125.html)

[hr]
Задание: Написать прогу, которая по заданному натуральному числу определяет количество цифр в нем и их сумму.Протестируйте функцию десятичных чисел из некоторого диапазона от n до m.

mrcnn
27-09-2008, 17:24
Это не прога, а ерунда.

int razrad(int m)
{
int result=0;
if (m==0)
return(1);
if (m < 0)
m = -m;
for( ; m > 0 ; )
{
m = (m - m % 10)/10;
result++;
}
return result;
}

Spl1t
27-09-2008, 17:28
Спасибо большое,ман...
сорри за ламерский вопрос...это полная прога?ниче не надо дописывать в начале или еще где?( вобще не разбираюсь(

Drongo
27-09-2008, 17:38
Spl1t, Держи, единственный нюанс, я не понял смысл этой фразы
Протестируйте функцию десятичных чисел из некоторого диапазона от n до m. Если я правильно понял, то тут стоит прикрутить цикл, от числа нижней границы диапазона, до числа верхней границы диапазона, и проверить все числа, выводя, количество чисел и их сумму? Или как?
P.S. Писана на Borland C++ 6.0

// Написать прогу, которая по заданному натуральному числу
// определяет количество цифр в нем и их сумму.
// Протестируйте функцию десятичных чисел из некоторого диапазона от n до m.
#include <iostream>
using std::cout;
using std::cin;
using std::endl;

// Функция расчитывающая количество чисел во введённом числе...
int Rasriad(int enterNumber)
{
int n = enterNumber, x = 0;
while (n != 0) {
n /= 10;
x++;
}
return x;
}

int main()
{
int enterNumber,
lenght = 0,
indexRas,
decimal = 1,
summa = 0,
z;

cout<<"Enter Number: ";
cin>>enterNumber;

// определяет количество цифр в нем и их сумму.
lenght = Rasriad(enterNumber);

for(int j = 1; j < lenght; j++)
decimal *= 10;

for(int i = 0; i < lenght; i++){
indexRas = enterNumber / decimal % 10;
cout<<" Number "<<i<<" = "<<indexRas<<endl;
summa += indexRas;
decimal /= 10;
}

cout<<"\n Summa all numbers: "<<summa<<endl;
cin>>z;

return 0;
}
//---------------------------------------------------------------------------

mrcnn
27-09-2008, 17:39
Чтобы прогу написать, надо жестко пахать.
Никто никогда ни в чем не хочет разбираться, поэтому и находятся в известном мягком месте.
Зачем вам информатика, если вы не хотите разбираться?
Забейте на это гиблое дело и идите работать грузчиком.

Spl1t
27-09-2008, 17:41
mrcnn
Как я уже написал выше..мне осталось сдать только один зачет...я учусь на спеуиальнсоти "Тамодженное дело"..никогда бы не пошел на информатику..и поэтому обратился сюда с этой проблемой

Drongo
да,речь тут про цикл идет

Drongo
27-09-2008, 17:45
Spl1t, Прикрепил скомпиленную прогу, надеюсь то, что надо.

Drongo
27-09-2008, 17:46
Spl1t, да,речь тут про цикл идет »Да я знаю, что про цикл, каков диапазон чисел?

Spl1t
27-09-2008, 17:47
Drongo
Спасибо..то,что надо как раз...мне бы код)

Получается,что все натуральные числа больше 9

Drongo
27-09-2008, 17:49
мне бы код »А я что в 4 комментарии выложил? ;)
Получается,что все натуральные числа больше 9 » Хорошо, от девяти и до какого числа?

Spl1t
27-09-2008, 17:52
в 4 коментарии ссылка на этот топик)
сюда,плиз,код вставьте)
все наутральные числа с 9
что ваша программа и исполняет)

Drongo
27-09-2008, 17:55
Spl1t, все наутральные числа с 9 »Непонял, с 9 и до бесконечности? :o В 4 комментарии, есть ссылочка Решение, она работает, открывайте её, там код. ;)

Spl1t
27-09-2008, 17:58
ну в условии написано же,что "заданному натуральному" числу...видимо до бесконечности...я бы конечно мог уточнить..но в тот день,я боялся спросить что-либо лишнее у препода,ибо сам пытался решить ее)

Drongo
27-09-2008, 18:17
Spl1t, я бы конечно мог уточнить »Вот это надо было сделать, потому что при таком условиивидимо до бесконечности... »задача будет иметь бесконечный цикл, а потом каждый тип int, double имеют свой предел в положительных числах.
int от –2 млрд до 2 млрд.
double от -4 млрд до 4 млрд.
P.S. я округлил.

Spl1t
27-09-2008, 18:19
ну значит эту программу Вашу покажу...идумаю,устроит
спасибо большое

Drongo
27-09-2008, 18:20
Spl1t, ну в условии написано же,что "заданному натуральному" числу »Эта часть решена.
Протестируйте функцию десятичных чисел из некоторого диапазона от n до m. »Решить не тяжело, но я не могу просто понять условие... Если взять случайный диапазон, скажем от 25 до 1348, то ок, могу сделать.

Spl1t
27-09-2008, 18:23
, то ок, могу сделать. »
было бы отлично...
возьмите случайный диапазон..я так и объясню...
и код можно сюда запостить плз

Drongo
27-09-2008, 18:24
Вроде готово. Только вы хоть комментарии прочтите в программе, чтобы смогли если спросят, что к чему, объяснить. И если не затруднит, после сдачи задачи, можежь зайти на форум и отписаться, прошло ли решение или нет?// Написать прогу, которая по заданному натуральному числу
// определяет количество цифр в нем и их сумму.
// Протестируйте функцию десятичных чисел из некоторого диапазона от n до m.
#include <iostream>
using std::cout;
using std::cin;
using std::endl;

// Функция расчитывающая количество чисел во введённом числе...
int Rasriad(int enterNumber)
{
int n = enterNumber,
x = 0;

while(n != 0){
n /= 10;
x++;
}
return x;
}

// Функция тестирования диапазона чисел
void TestDiapason()
{
int lenght = 0,
indexRas,
decimal = 1,
summa = 0,
// значения переменных 'min' и 'max' задают границы диапазона
min = 24, // Нижняя граница диапазона (меняем на нужный)
max = 1248; // Верхняя граница диапазона (меняем на нужный)

for(; min < max; min++){
decimal = 1;
summa = 0;
// определяет количество цифр в нем и их сумму.
lenght = Rasriad(min);

for(int j = 1; j < lenght; j++)
decimal *= 10;

for(int i = 1; i <= lenght; i++){
indexRas = min / decimal % 10;
summa += indexRas;
decimal /= 10;
}
cout<<"\n Summa all numbers '"<<min<<"' = "<<summa<<endl;
}
}

int main()
{
int enterNumber,
lenght = 0,
indexRas,
decimal = 1,
summa = 0,
z;

cout<<"Enter Number: ";
cin>>enterNumber;

// определяет количество цифр в нем и их сумму.
lenght = Rasriad(enterNumber);

for(int j = 1; j < lenght; j++)
decimal *= 10;

for(int i = 1; i <= lenght; i++){
indexRas = enterNumber / decimal % 10;
summa += indexRas;
decimal /= 10;
}
cout<<"\n Summa all numbers = "<<summa<<endl;

// Протестируйте функцию десятичных чисел из некоторого диапазона от n до m.
cout<<"\n ----Proverka Diapasona on 'n' do 'm'---\n\n";
TestDiapason();

cin>>z;

return 0;
}
//---------------------------------------------------------------------------

Spl1t
27-09-2008, 22:10
Спасибо большое за подробное решение и комментарии...Обязательно отпишусь..Спасибо большое еще раз..побольше бы таких людей.

___oj
28-09-2008, 11:28
Спасибо большое за подробное решение и комментарии... »
Подробное решение давать весьма отстойно. Я почти уверен что автор вопроса ничего не понял и даже не пытался, да и сложно это ~ разобраться в чужом решении. На некоторых форумах по программированию, особенно заграничных, администрацией практикуется
неодобрение и запрещение такого рода "помоши", когда дается полное решение. Куда лучше подсазать, обьяснить и вместе разобраться. Заодно видно на что способен задающий вопрос user, а вдрук он совсем плох... тогда пусть привыкает платить рублики, это ему в будущем. пригодится.побольше бы таких людей. »
Такие "добрые" люди, на самом деле плодят идиотов.




© OSzone.net 2001-2012