Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Alisa22
-1 / 1 / 0
Регистрация: 14.06.2010
Сообщений: 75
#1

Указатели. Динамическая память в С++ - C++

21.05.2011, 10:47. Просмотров 795. Ответов 1
Метки нет (Все метки)

Найти наибольшую и наименьшую цифры в записи данного натурального числа.

У меня есть код на Паскале. Помогите переделать на С++.И решение нужно оформить с указателями и динамической памятью.
Листинг:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Program MaxDigit;
Type NaturLong = 1..(High(LongInt));
 Digit = 0..9;
Var A:^ LongInt;
 
Function Minimum(M : LongInt) : Digit;
Begin
If M < 10
Then MINIMUM := M
Else If M Mod 10 < Minimum(M Div 10)
Then Minimum:= M mod 10
Else Minimum:= Minimum(M Div 10)
End;
 
Function Maximum(N : LongInt) : Digit;
Begin
If N < 10
Then Maximum := N
Else If N Mod 10 > Maximum(N Div 10)
Then Maximum := N mod 10
Else Maximum := Maximum(N Div 10)
End;
 
Begin
new(a);
Write('Введите натуральное число: ');
ReadLn(A^);
 WriteLn('Максимальное число= ', Maximum(A^));
   Writeln('Минимальное число=',Minimum(A^));
   Dispose(A);
Readln;
End.
 Комментарий модератора 
Используйте теги форматирования кода!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.05.2011, 10:47     Указатели. Динамическая память в С++
Посмотрите здесь:

Указатели и динамическая память - C++
Не могу немного понять, допустим, я хочу создать массив, зачем мне под него выделять память, почему нельзя создать указатель,...

Указатели. Динамическая память. - C++
Нужно очень срочно. Сегодня последний день сдачи. 1. Дано натуральное число n. Определить количество цифр в цифровой записи данного...

Указатели и динамическая память - C++
Здравствуйте. Почему размер памяти для указателя выделяется такой же как для объекта в куче. Например: int * pVar = new int;Как я понял,...

Указатели.Динамическая память. - C++
Перепешите пожалуйста на С/С++! &lt;script&gt; var n = new Number(); var m = new Number(); n = parseInt(prompt(&quot;n=&quot;, &quot;5&quot;)); m =...

Массивы и указатели. Динамическая память - C++
Нужно вывести на экран максимальные элементы в каждом столбце двумерного массива (матрицы). Решить с помощью указателей. Ошибка...

Динамическая память, указатели и ссылки - C++
Добрый день, я уже 3 месяца учу C++, но не как не могупонять как работать с указателями в C++, я весь гугл перерыл, я не могу понять что...

Указатели,массивы символов и динамическая память - C++
Всем привет!!С Вашего позволения сразу к делу. Проблема: не могу освободить память выделенную в динамической памяти Предположения:...

Динамическая матрица, не выводит через указатели - C++
Если матрица квадратная, все норм, если прямоугольная пишет ошибку и вылетает. Просто не пойму почему через указатели не хочет делать. ...

Динамическая память [new] - C++
Если записать так: char *p; p = new char; cin&gt;&gt;p; for(int i=0; i&lt;strlen(p); i++) cout&lt;&lt;p&lt;&lt;endl;

динамическая память.... - C++
Ввести двухмерном массив, для работы с массивом использовать указатель. Массив разместить в динамической памяти. Определение суммы...

Динамическая память - C++
Надо ввести массив из файла. Сам массив хранится в динамической памяти. Сколько я над прогой не бился, а вводит данные криво. С...

Динамическая память - C++
Помогите перевести массивы в динамическую память пожалуйста + почему-то не работает запись в файл(не перезаписывает). #include &lt;iostream&gt;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lemegeton
2918 / 1347 / 134
Регистрация: 29.11.2010
Сообщений: 2,721
21.05.2011, 23:12     Указатели. Динамическая память в С++ #2
Цитата Сообщение от Alisa22 Посмотреть сообщение
Найти наибольшую и наименьшую цифры в записи данного натурального числа.
Цитата Сообщение от Alisa22 Посмотреть сообщение
И решение нужно оформить с указателями и динамической памятью.
"Помогите мне переставить руль с шестерки на белаз. И руль нужно оформить ветровым стеклом и литыми дисками."

Задача плевая. Непонятно, нафига тебе литые диски на руле?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdlib>
#include <cstdio>
#include <ctime>
 
int main(int argc, char *argv[]) {
  srand(time(NULL));
  long int *number = new long int;
  *number = rand();
 
  unsigned char min_digit = 9, max_digit = 0;
  for (int temp_number = *number; temp_number > 0; temp_number /= 10) {
    unsigned char this_digit = temp_number % 10;
    if (this_digit < min_digit) min_digit = this_digit;
    if (this_digit > max_digit) max_digit = this_digit;
  }
 
  printf("Number is: %ld.\n", *number);
  printf("Min digit is: %d, max digit is: %d.\n", min_digit, max_digit);
 
  delete number;
  return 0;
}
Yandex
Объявления
21.05.2011, 23:12     Указатели. Динамическая память в С++
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru