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

Переставить первую и последнюю цифры числа - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.86
unusual
0 / 0 / 0
Регистрация: 12.02.2011
Сообщений: 4
12.02.2011, 13:57     Переставить первую и последнюю цифры числа #1
LYUDI DOBRIE POMOGITE...PROWU VAS)))

1.Дано натуральное число n.
a. Выяснить, входить ли цифра 3 в запись числа n2 .
b. Поменять порядок цифр числа n на обратный.
c. Переставить первую и последнюю цифры числа n.
d. Приписать по единице в начало и в конец записи числа n.
2.По данному действительному числу a и натуральному n вычислите сумму 1+a+a2+...+an не используя формулу суммы геометрической прогрессии. Время работы программы должно быть пропорционально n. Затем решите эту задачу по формуле суммы геометрической прогрессии.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2011, 13:57     Переставить первую и последнюю цифры числа
Посмотрите здесь:

Переставить местами первую и последнюю цифры C++
Переставить первую и последнюю цифры числа натурального числа n C++
Дано натуральное число n. Переставить местами первую и последнюю цифры числа n C++
Дано натуральное число n. Переставить местами первую и последнюю цифры этого числа C++
C++ Для целого числа N, вводимого с клавиатуры, переставить первую и последнюю цифры и выдать его на печать.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
12.02.2011, 14:55     Переставить первую и последнюю цифры числа #2
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#include <iostream>
 
bool choise1(int);
int choise2(int);
int choise3(int);
int choise4(int);
 
size_t num_length(int num);
int div(int);
 
int main()
{
    setlocale(LC_ALL, "Rus");
 
    int n;
 
    std::cout << "Введите n: ";
    std::cin >> n;
 
    int v;
 
    do
    {
        std::cout << "Выберите желаемое действие:" << std::endl
                  << "1. Выяснить, входит ли цифра 3 в запись числа n^2" << std::endl
                  << "2. Поменять порядок цифр числа n на обратный" << std::endl
                  << "3. Переставить первую и последнюю цифры числа n" << std::endl
                  << "4. Приписать по единице в начало и в конец записи числа n" << std::endl
                  << "5. Выход" << std::endl;
        std::cin >> v;
 
        switch (v)
        {
        case 1:
            if (choise1(n))
                std::cout << "Да, входит" << std::endl;
            else
                std::cout << "Нет, не входит" << std::endl;
 
            break;
        case 2:
            std::cout << choise2(n) << std::endl;
 
            break;
        case 3:
            std::cout << choise3(n) << std::endl;
 
            break;
        case 4:
            std::cout << choise4(n) << std::endl;
 
            break;
        case 5:
            break;
        default:
            std::cout << "Введено недопустимое действие! Попробуйте ещё раз..." << std::endl;
 
            break;
        }
    }
    while (v != 5);
 
    return 0;
}
 
size_t num_length(int num)
{
    size_t length = 0;
 
    while (num != 0)
    {
        num /= 10;
        ++length;
    }
 
    return length;
}
 
int div(int num)
{
    int result = 1;
 
    size_t length = num_length(num);
 
    while (--length != 0)
        result *= 10;
 
    return result;
}
 
bool choise1(int n)
{
    n *= n;
 
    while (n != 0)
    {
        if (n % 10 == 3)
            return true;
 
        n /= 10;
    }
 
    return false;
}
 
int choise2(int n)
{
    int result = 0;
 
    while (n != 0)
    {
        result = result * 10 + n % 10;
        n /= 10;
    }
 
    return result;
}
 
int choise3(int n)
{
    int d = div(n);
 
    if (d == 1)
        return n;
 
    return ((n % 10) * d + ((n - (n / d) * d) / 10) * 10) + n / d;
}
 
int choise4(int n)
{
    int d = div(n);
 
    return (d * 10 + n) * 10 + 1;
}
Добавлено через 18 минут
2.
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
#include <iostream>
#include <cmath>
 
int main()
{
    double a;
    int n;
 
    std::cout << "Enter a: ";
    std::cin >> a;
    std::cout << "Enter n: ";
    std::cin >> n;
 
    double sum = 1.0;
    double prod = a;
 
    for (int i = 2; i <= n; ++i)
    {
        sum += prod;
        prod *= a;
    }
 
    std::cout << "Loop result:    " << sum << std::endl;
    std::cout << "Formula result: " << (1.0 - pow(a, n)) / (1.0 - a) << std::endl;
 
    return 0;
}
unusual
0 / 0 / 0
Регистрация: 12.02.2011
Сообщений: 4
13.02.2011, 09:34  [ТС]     Переставить первую и последнюю цифры числа #3
spasibo vam bol'woe)))vyruchili,blagodaru!!!!!!!!
Artorios
55 / 55 / 16
Регистрация: 19.11.2010
Сообщений: 211
28.06.2011, 15:03     Переставить первую и последнюю цифры числа #4
D)Приписать по единице в начало и в конец записи числа n.
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
#include <stdio.h>
#include <math.h>
int kol(float x)
{ int i; i=0;
  if (x >= 0)
  {
    do
     { x=x / 10;  //x:=x div 10;
       i++;
      }
    while (x >=1);
      return i;
  }        else
return 0;
}
void main()
{
float a;
int f;
printf("Enter a ");
scanf("%f",&a);
f=kol(a);
  a=a/pow(10.0,f);
  a=a+1;
  a=a*pow(10.0,f+1);
  a=a+1;
printf("Result= %.0f\n",a);
}
Yandex
Объявления
28.06.2011, 15:03     Переставить первую и последнюю цифры числа
Ответ Создать тему
Опции темы

Текущее время: 08:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru