Министерство образования и науки РФ
ГОУВПО «Комсомольский-на-Амуре государственный технический университет»
Кафедра МОП ЭВМ
«Задачи на составление функций.»
Выполнил: Рогозин В.А.
Группа: 4ВС-1
Проверил: Могильников
Вариант 18
Комсомольск-на-Амуре
2006
Задание:
Составить блок-схему и разработать программу, которая преобразует целое положительное десятичное число в эквивалентное ему восьмеричное целое число. Число должно быть записано в символьном виде, причем нельзя использовать библиотечные функции и формат вывода «%о» для преобразования в символьный вид.
Алгоритм:
После ввода числа, программа выделяет память для элементов массива, после этого идёт цикл с основными вычислениями, условием выхода из цикла является a!=0, т.е. пока при делении числа на восемь не получиться 0. в теле цикла сперва вычисляется остаток от деления числа на 8, а затем и простое деление числа на 8, каждый результат целочисленного деления записывается в массив до тех пор пока не выполниться условие выхода из цикла. Затем в другом цикле в обратном порядке выводятся на экран все элементы массива.
Блок-схема:
|
|||||
|
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
void main(void)
{
clrscr();
int *t;
unsigned int a=0,i=0,v;
cout<<"введите 10-тичное число: ";
cin>>a;
t=(int*)calloc(100,sizeof(int)); // выделен памяти
while(a!=0) // перевод чисел
{
*(t+i)=a%8;
a=a/8;
i++;
}
cout<<"восьмиричное число: ";
for(v=i; v>0; v--)
cout<<(*(t+(v-1)));
getch();
}
Литература:
Не использовалась
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.