Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.51/67: Рейтинг темы: голосов - 67, средняя оценка - 4.51
0 / 0 / 0
Регистрация: 02.12.2008
Сообщений: 11
1

Написать функцию, которая переворачивает число

02.12.2008, 01:12. Показов 12564. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите, пожалуйста с задачкой!
Задачка:
Дано натуральное число n и натуральные числа а1, а2... аn (n < 100). Переделать все данные числа так, чтобы цифры были записаны в обратном порядке (например, на месте 234 - 432, 100 - 1 итд.) В решении использовать функцию, которая данному числу возвращает обратное число, расчеты вести численные!

Т.е. надо написать функцию, которая переворачивает число (например из 765 делает 567)
Водиться n (количество чисел, которые позже будут вводиться и переворачиваться);
for (int i = 0; i < n; i++)
cin >> a;
Потом функция и cout << a;
(по-крайней мере, я так думаю )

Заранее, большое спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.12.2008, 01:12
Ответы с готовыми решениями:

Написать функцию, которая переворачивает строку
Написать функцию, которая переворачивает строку. Заголовок функции: void reverseStr (char *s);...

Написать функцию, которая переворачивает строку
1) Напишите функцию, которая переворачивает строку (массив типа char). Используйте цикл for,...

Написать функцию, которая переворачивает строку (массива типа char).
Вот задание: Написать функцию reversit(), которая переворачивает строку (массива типа char). ...

Написать рекурсивную функцию, что переворачивает заданное натуральное число
помогите пожалуйста

7
Супер-модератор
8783 / 2536 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
02.12.2008, 10:06 2
ну вот тебе код, что переворачивает числа, ну а ты уже обвязку сам допиши...
Код
#include <iostream>
using namespace std;
//возведение в степень
int pow10(int num){
  int z = 1;
  for(int i = 0; i < num-1; i++) z*=10;
  return z;
}
//поворот числа
int perevorot(int x){
  char string[25];
  itoa(x, string, 10);
  int i = strlen(string); // длина числа 
  int dev = 0;
  // сам поворот
  while(x%10 != 0){
     dev += (x%10) * pow10(i); 
     i--;
     x/=10;
  }
  return dev;
}
если будут баги, маячь...
1
0 / 0 / 0
Регистрация: 02.12.2008
Сообщений: 11
04.12.2008, 18:14  [ТС] 3
Спасибо большое!
Только вот есть еще одно "но"... Как добиться того, чтобы функция из 100, делала 1, а не 0... =(
Помогите, пожалуйста!
0
10 / 10 / 0
Регистрация: 14.11.2008
Сообщений: 56
05.12.2008, 00:49 4
Можно как то так, тогда из 100 1 получается
C++
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
33
34
35
36
37
38
#include "conio.h"
#include "stdio.h"
 
int perevorot(int x);
 
int main() {
    int n, a[100], i, b[100],x;
    printf("Vvedite kol-tvo chisel\n");
    scanf("%d",&n);
    for(i=0;i<n;i++) {
        printf("Vvedite %d chislo\n",i+1);
        scanf("%d",&a[i]); }
    printf("Vvedennie chisla\n");
    for(i=0;i<n;i++)
        printf("%d\n",a[i]);
    for(i=0;i<n;i++) 
     {                
        x=a[i];             
        b[i]=perevorot(x);
     }
    printf("Perevernutie chisla\n");
    for(i=0;i<n;i++) 
        printf("%d\n",b[i]);
    getch();
    return(0);
}
int perevorot(int x){
    int i,d,ost,s=0;
    while (1) 
    {
          d=x/10;
          ost=x-d*10;
          s=s*10+ost;
          if (d==0) break;
          x=x/10;
    }
    return(s);
}
1
0 / 0 / 0
Регистрация: 02.12.2008
Сообщений: 11
05.12.2008, 01:22  [ТС] 5
=(( Мне надо с <iostream>...
а то я не понимаю, что это за scanf("%d",&n);... да и не примут.
Но всё равно, спасибо!
0
Эксперт С++
2255 / 770 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
05.12.2008, 01:24 6
lnter,о боже... scanf("%d",&n) это cin >> n;
0
0 / 0 / 0
Регистрация: 02.12.2008
Сообщений: 11
05.12.2008, 01:26  [ТС] 7
а что это за "%d"? =O
0
Эксперт С++
2255 / 770 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
05.12.2008, 01:30 8
lnter, просто загугли printf /scanf. Есть подробные описания,это стандартные функции. %d тут указывает,что выводится/вводится целое число типа int.
0
05.12.2008, 01:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.12.2008, 01:30
Помогаю со студенческими работами здесь

Написать программу, которая получает трехзначное число, “переворачивает” его и выводит результат в консоль
Двух кратное переварачивает а трёх нет как только не пробовал подскажите вот мой код #include...

Написать и протестировать функцию, которая "переворачивает" строку, передаваемую ей в качестве параметра
Написать и протестировать функцию,которая &quot;переворачивает&quot; строку,передаваемую ей в качестве...

Напишите функцию, которая переворачивает строку
1) Напишите функцию, которая переворачивает строку (массив типа char). Используйте цикл for,...

Напишите функцию, 1.которая переворачивает строку 2.вычисления корней квадратного уравнения
ПОЖАЛУЙСТА ВЫРУЧИТЕ, ПОМОГИТЕ НАПИСАТЬ ПРОГИ: 1) Напишите функцию, которая переворачивает строку...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru