Помогите пожалуйста написать алгоритм перевода числа из 10-ой с.с. в 2-ую с.с. Язык Си.
Число в десятичной системе целое или с дробной частью?
Не, ну до чего люди ленивые пошли. Пользоваться поиском в интернете им не позволяет религия.
shplint, уважаемый. Ну неужели так сложно найти в интернете алгоритм первода чисел из одной системы в другу.
Вот вам один из алгоритмов - http://ru.wikipedia.org/wiki/%D0%94%D0%B2%D0%BE%D0%B8%D1%87%D0%BD%D1%8B%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%B0#.D0.9F.D1.80.D0.B5.D0.BE.D0.B1.D1.80.D0.B0.D0.B7.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B4.D0.B5.D1.81.D1.8F.D1.82.D0.B8.D1.87.D0.BD.D1.8B.D1.85_.D1.87.D0.B8.D1.81.D0.B5.D0.BB_.D0.B2_.D0.B4.D0.B2.D0.BE.D0.B8.D1.87.D0.BD.D1.8B.D0.B5
Или вы ждете что вам дадут готовое решение, прямо на нужном вам языке? А самому головой подумать слабо? Или вы так загружены выполнением заказов на написание лабораторных на "ANSI C", о которых вы здесь несколько раз пытались дать объявление, что головой думать недосуг?
Да я загружен, да + еще к экзамену готовлюсь...И ты тут ссылку написал, ты хоть смотрел че там? Или ты думаешь что я на бумаге не умею переводить числа в другие с.с.?
shplint,
//поправил
Archangel, спасибо большое очень помог мне! Ты проверил его работоспособность? если что, у меня этот алгоритм не работает
Админ, на вашем форуме как-то не очень развивается раздел программирования. Хотелось бы чтобы его пропаганда велась более активным образом. Поставьте задачу своим модераторах, они конечно неплохо следят за сообщениями на форуме, но тема программирования вообще не развивается и факт...
Барэль, над этим вопросом надо немножко подумать, но вполне понятно что этот раздел развивать нужно. К примеру можно, по примеру одного из сайтов, сделать темку для написания небольших статей(программок) о том какие хитрости можно провернуть со своим или чужим компьютером, влядея некоторыми приемами. Но этим должен заниматься человек шарящий в этом+это не должно противоречить УК РФ.
shplint, если хочешь - займись. Я уже устал писать, что авторство приветствуется.
Этот алгоритм вообще неправильный, че-то он какой-то муторный у тебя и если честно я его непонял, конечно я еще зеленый в программировании. Но я считаю, что он слишком запутанный и вообще неправильный. Токо не обижайся...
Вот он правильный алгоритм, написал его потратив чуть больше 20 минут. Появилось настроение и желание и все быстренько сделал. Админ, вот видишь справился, после того как подумал...Правда в этом алгоритме надо еще поменять в массиве А последовательность чисел на обратную, ну это я додумаю.
int main(int argc, char* argv[])
{ static int i;
int chislo,ost,chastnoe,A[100],size;
const int osn=2;
printf("enter number");
scanf("%d",&chislo);
do
{ chastnoe=chislo/osn;
ost=chislo%osn;
{A[i]=ost;i++;}
chislo=chastnoe;
}
while (chastnoe>osn);
size=i;
for (i=0;i<size;i++)
printf("%d",A[i]);
getch();
Ну знаешь, одно единственного "правильного" алгоритма не существует
Кому как больше нравится, тот так и пишет.
Я не считаю, что написанный мною, является не верным.
Впринципе особой разницы не вижу, кроме реализации массива для вывода поштучно символов
У нас сегодня парню на экзамене одна из задач досталась такая, он сидел 3 часа и не смог вообще ничего написать по ней... Сам я однако тоже оплошал на 3 сдал, ощущение хреновое, мне с первой задачей неповезло.
Дан строковый массив, программа должна отслеживать появление лишних пробелов и удалять их. Выложите свои идеи и алгоритмы. А я в свою очередь выложу, что я на экзамене наработал по этой программе.
shplint, поподробней постановку задачи можно?
Что представляет из себя заданный массив? (Массив, слов, или групп слов, т.е. заполнен ли он уже, как заполнен, и есть ли там пробелы?)
Как могут появиться новые данные в этом массиве.
Критерий определения того, что пробел является лишним, как и где он появляется?
Требования к интерфейсу.
Опишу, насколько помню. Программа считывает текст из текстового файла на консоль, текст представляет собой слова на англиском языке, разделенные знаком пробела, и если в тексте слова разделены не одним пробелом а двумя, то программа должна удалить лишний пробел. тип элемнтов массиве соответственно char, текст мы можем вводить и непосредственно с консоли, главное чтобы работал алгоритм.Интерфейс программы самый простой, не нужно ничего лишнего, я бы сказал об отсутствии интерфейса... Думаю теперь все понятно с формулировкой задачи.
В свое оправдание скажу, что не сделал по причине отсутствия опыта работы с текстовыми данными и незнанием и неумением применить функции для тестового массива, надо исправляться.
Админ, как продвигается решение этой задачки или решение стоит на месте мертвым грузом?
shplint, Я не понимаю вас. При наличии времени, вы сами до сих пор не разобрались как это решается? Или вы хотить узнать смогу ли я решить эту задачу и приведу вам готовое решение?
Я смогу, но писать код special for you не намерен.
Исходя из условия задачи, массив тут совершенно не нужен, т.к. исходные данные находятся в файле, читаются из него, удаляются лишние пробелы и выводятся на консоль. Алгоритм будет примерно следующим:
Админ это все понятно, но мне непонятно как сдвинуть строку на 1 позицию назад. Подскажи хороший сайт где объяснены функции работы со строками, пожалуйста. В поисковике я искал, мало что нашел хорошего... А алгоритм ты точно не можешь написать, это стопроцентов. И если бы ты написал его то это было бы нетолько для меня, а для всех посетителей этого форума, тебе так не кажется? Если ты соображал бы, то тебе это как 2 пальца, а не вондосил бы тут... вся фишка в этой программе чтобы сдвинуть строку после того как компилятор нашел второй проел на 1 позицию назад.
И для начала можно сделать без чтения данных из файла.
shplint, Алгоритм как раз написан, и написан вполне нормально, и тот, у кого есть хоть капля соображалки и способности абстрагироваться от "компилятора, который что-то ищет" ( так и хочется сказать находит, и перепрятывает - учите матчасть, уважаемый, чем занимается компилятор), способен его понять и реализовать.
Для тех же кто в танке, или у кого запас своих мозгов неожиданно закончился, объясняю - можно обойтись и без сдвигов, если рассматривать текстовую строку не как массив символов, а именно как строку (паскалевский тип String)
В этом случае можно пользоваться функциями работы со строками. Т.к. в стандартном паскале нет функции замены (что в принципе не правильно), то аналог такой функции придется писать самому. Для ленивых и немощных, привожу ее текст и пример использования:
Кстати, можно вообще обойтись без всяких функций, строк, сдвигов и удалений. Для этого исходные данные нужно обрабатывать на этапе их получения посимвольно и запоминать предыдущий прочитанный символ. Если и текущий и предыдущий символы - это пробелы, то текущий просто не заносить как прочитанный.
Алгоритм
"Вычислительные машины, комплексы, системы и сети"
shplint, а тебе надо подсказку в решении или решение? Если первое, то Админ по-моему уже дал их штук 5. Если второе, то тут я поддержу Админа и скажу "думай сам". Потом в жизни тоже будешь сваливать на дядю Ваню?
Барэлб, ты несказанно рад этому...
А алгоритм сам сделаю, когда экзамены сдам и можно будет заняться изучением строковых функций!
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)