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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2010, 22:50   #1
tuyana))
 
Регистрация: 12.12.2010
Сообщений: 6
По умолчанию Циклы и массивы. Теория си+++

Дорогие друзья, помогите пожалйста разобраться с отчетом!препода лютуют. Проверьте на правильность... и кое-где подскажите...


1.Условие задачи
Задано множество натуральных чисел. Заменить каждое из них на число, которое получается из исходного записью (десятичных) цифр в обратном порядке. Полученное множество чисел распечатать.
2.Анализ задачи
1) Исходные данные. По условию нам дано множество натуральных чисел. Так как нам даны натуральные числа, то для их хранения будем использовать одномерный массив типа unsigned int.
Результат решения задачи. Результатом задачи будет множество натуральных чисел, где числа будут записью цифр исходных чисел в обратном порядке. Для его хранения будем использовать массив типа unsigned int, поскольку над числами были проведены операции не изменяющие тип.
2) Отношение между входными и выходными данными.
???как здесь все грамотно написать?надо
в виде формул и или мат формул между входными и выходными данными задачи

3) Описание способа решения задачи.
способ должен быть описан формально на языке математики и языке предметной области задачи


4) Подзадачи.
• Необходимо ввести множество чисел.
• Необходимо реализовать механизм записи цифр чисел в обратном порядке.
• Необходимо вывести получившееся множество чисел.


3.Структуры данных.вданном пункте определяются и описываются формы представления(внешнего и внутеннего)основных(исходных и выходных) данных задачм.

Переменная Тип переменной Описание
M [] Unsigned int Массив чисел
V Unsigned int Исходное число
R Unsigned int Перевернутое число
SZ int Количество элементов в массиве


4.Алгоритм решения задачи.
блок схема. я ее сделала,но она очень неграмотно выглядит.Если есть возможность покажите




5.Структура программы.
1. void invert(unsigned int* value)Процедура нахожденя обратных чисел. Value-это указатель на значение типа unsigned int (т.е. значение Value это адрес области памяти, в которой может храниться число типа unsigned int)здесь описываются состовные части программы и их взаимосвязь. описание функции включает ее прототип, назначение и описание параметров(описание параметра включает имя и назначение параметра.взаимосвязь функций можно представить в виде схемы,отображающей связь между функциями по управлению.
6.Текст программы.
Код:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <locale.h>

void invert(unsigned int* value)
{
	unsigned int v = *value; 
    unsigned int r = 0;
	while(v % 10 != v)
	{
		unsigned int ost = v % 10;

		r = (r + ost) * 10;
		v = (v - ost) / 10;
	}
	r = r + v;
	
	*value = r;
}

void main()
{
	setlocale(0,"rus");
	int SZ;
	unsigned int m[10000];
	printf("Сколько чисел будем хранить в массиве?\n");
	scanf("%i",&SZ);
	printf("\n");
	
	for(int i=0; i<SZ; i++) invert(&(m[i]));

	printf("\n");
	for(int i=0; i<SZ; i++) printf("%i: %i\n",i+1,m[i]);

	_getch();

}
каждый ваш совет и мысль очень важны для меня)))

Последний раз редактировалось Stilet; 16.12.2010 в 10:25.
tuyana)) вне форума Ответить с цитированием
Старый 16.12.2010, 10:39   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
число, которое получается из исходного записью (десятичных) цифр в обратном порядке.
Предлагаю функцию которая это делает:
Код:
int revers(int x){
	int k[10]={0},i=0,e=0;
	for(;x;x/=10){
		k[i++]=x%10;
	}
	k[i--]=x;
	int l=1;
	for(;i;i--){
		e+=k[i]*l;
		l*=10;
	}
	e+=k[0]*l;
	return e;

}
int _tmain(int argc, _TCHAR* argv[])
{
	int i=853	;
	printf("%d",revers(i));
	getchar();
	return 0;
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.12.2010, 17:56   #3
tuyana))
 
Регистрация: 12.12.2010
Сообщений: 6
По умолчанию

спасибо за вашу функцию!но вы знаете в чем дело, я все таки уже как бы разобралась в своем решении, не могли бы вы помочь именно в теоретическом оформлении?
tuyana)) вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Теория информации + теория её передачи. vedro-compota Общие вопросы по программированию, компьютерный форум 4 23.10.2010 10:06
Циклы, теория чисел!!! Woxx Паскаль, Turbo Pascal, PascalABC.NET 7 03.09.2010 20:14
Ветвление, Теория чисел, Циклы Woxx Паскаль, Turbo Pascal, PascalABC.NET 3 31.08.2010 20:39
Циклы, Теория чисел... MooN2h Паскаль, Turbo Pascal, PascalABC.NET 11 30.08.2010 17:50