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

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

Войти
Регистрация
Восстановить пароль
 
 
exile
0 / 0 / 0
Регистрация: 14.06.2011
Сообщений: 13
#1

Действительное число сократить к заданному разряду - C++

14.06.2011, 03:49. Просмотров 772. Ответов 16
Метки нет (Все метки)

програмка на Турбо Си. Действительное число сократить к заданному разряду
от типо такой финишер - "введите разряд" - к примеру 3
введите число: 6,372792381739717471
ответ: 6,373.
помогите кто нибудь, а?)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.06.2011, 03:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Действительное число сократить к заданному разряду (C++):

Дано натуральное число n, действительное число х. Вычислить sinx+sinx2+...+sinxn - C++
Прошу помочь с 3-мя задачками очень нужно сдать а сделать никак не могу. 1) Дано натуральное число n, действительное число х. Вычислить...

Даны действительное число а, натуральное число n. Вычислить значение выражения. - C++
Даны действительное число а, натуральное число n. Вычислить: 1/a+1/a*(a+1)+...+1/a*(a+1)...(a+n);

Дано натуральное число n и действительное число а, найти, используя цикл - C++
Дано натуральное число n и действительное число а, найти, используя цикл: ...

Дано натуральное число n и действительное число x; вычислить значение выражения - C++
Как будет по этой формуле? 1+(х^2)\2!+(x^4)\4!+...+(x^2m)\(2m)!

Дано действительное число а и целое число n. Вычислить сумму - C++
Дано действительное число a и целое n. Вычислить сумму. 1/a+1/a(a+1)(a+2)+...+1/a(a+1)(a+2)...(a+n)

Дано натуральное число n и действительное число x. Вычислить : - C++
Дано натуральное число n и действительное число x. Вычислить : S=sinx+coscosx+sinsinsinx+coscoscoscosx+..... (n раз)

16
tylix
68 / 55 / 6
Регистрация: 10.06.2011
Сообщений: 149
14.06.2011, 04:04 #2
float переменная

ааа.. может тебе просто вывод нужен?
тогда
x = 6,372792381739717471
printf("%.3f", x);
0
exile
0 / 0 / 0
Регистрация: 14.06.2011
Сообщений: 13
25.06.2011, 01:51  [ТС] #3
не, мне нужно прогу написать, что бы она сначала спросила разряд, потом спрашивала текст у меня, с неограниченным количетсвом символов, потом находится точка, от неё отчитывается разряд, и если последнее число+1 больше 4, то +1 к числу, ну типо разряд 3, число 3.38751972739 и сокращается - 3.388. я то понимаю алгоритм, я не понимаю в языке просто)

Добавлено через 1 час 42 минуты
оу, помогите - а как лучше изучить язык вообще?
0
Jupiter
Каратель
Эксперт С++
6556 / 3977 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
25.06.2011, 02:20 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <string.h>
 
int main()
{
    char numb[20] = { 0 };
    printf("Enter number(example 648.329): ", numb);
    fgets(numb, 20, stdin);
    printf("Enter number of digits: ");
    int digits;
    scanf("%d", &digits);
    fflush(stdin);
    char * ptr = strstr(numb, ".");
    if(ptr[digits + 1] > '4')
    ++ptr[digits];
    ptr[++digits] = '\0';
    printf("%s\n", numb);
    getchar();
    return 0;
}
Добавлено через 1 минуту
Цитата Сообщение от exile Посмотреть сообщение
оу, помогите - а как лучше изучить язык вообще?
а оно вам надо?
0
exile
0 / 0 / 0
Регистрация: 14.06.2011
Сообщений: 13
25.06.2011, 02:51  [ТС] #5
ыть, по ходу не Турбо СИ. в майкрософт висуал студио - проект с росширением .с
чего чар если числа вещественные? там флоат идёт, а если текст с символами то дабл) и там неограниченное кол-во символов) лалала
0
Jupiter
Каратель
Эксперт С++
6556 / 3977 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
25.06.2011, 03:24 #6
Цитата Сообщение от exile Посмотреть сообщение
ыть, по ходу не Турбо СИ. в майкрософт висуал студио - проект с росширением .с
чего чар если числа вещественные? там флоат идёт, а если текст с символами то дабл) и там неограниченное кол-во символов) лалала
сам-то понял что написал

Добавлено через 1 минуту
лаба на тему массивы и строки ^_^
Цитата Сообщение от exile Посмотреть сообщение
я то понимаю алгоритм
и где ж твой алгоритм, умник? думаешь выложил задание на форум, а сам на боковую?
0
Chelioss
180 / 180 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
25.06.2011, 03:46 #7
Цитата Сообщение от Maxwe11 Посмотреть сообщение
а оно вам надо?
К чему вы клоните?
0
Jupiter
25.06.2011, 03:48
  #8

Не по теме:

Цитата Сообщение от Chelioss Посмотреть сообщение
К чему вы клоните?
в армию пусть идет

0
xAtom
915 / 740 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
25.06.2011, 04:27 #9
Вот подойдёт, набросал.

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
#include <iostream>
#include <math.h>
using namespace std;
 
 
// работает с doluble-8 byte qword
double   f_trim(double  num, int cnt) {
    double  first = 0.0;  
    double  last = modf(num, &first);
    last = floor(last * pow(10, cnt));
    double fn =  last * ( 1 / pow(10, floor(log10(last))+1 ) ) + first;
    return  fn;
}
 
 
void  main(void){
 
    double pi = f_trim(3.1457895, 2);
    cout << pi << "\n\n";
 
    cout << f_trim(7.789463,      1)  << endl;
    cout << f_trim(999.456782,  3)  << endl;
    cout << f_trim(1234.5796,    2)  << endl;
 
      cin.get();
}
0
exile
0 / 0 / 0
Регистрация: 14.06.2011
Сообщений: 13
25.06.2011, 13:52  [ТС] #10
cout - c++
тю алгоритм - делаешь разряд, который ищет точку в тексте, от типо 3,466 должно считать типо - 4*10+6*(10+6). и от если последнее число больше 4х - то всё окидоки, а вообще по лабе там и числа, и символы

Добавлено через 13 минут
Цитата Сообщение от exile Посмотреть сообщение
cout - c++
cout - c++
тю алгоритм - делаешь разряд, который ищет точку в тексте, от типо 3,466 должно считать ячейки следующим образом - 4*10+6*(10+6). и от если последнее число больше 4х - то всё окидоки плюсуем к числу +1, а вообще по лабе там неограниченное количество символов
ыть
0
easybudda
Модератор
Эксперт CЭксперт С++
9663 / 5612 / 952
Регистрация: 25.07.2009
Сообщений: 10,775
25.06.2011, 14:34 #11
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от exile Посмотреть сообщение
тю алгоритм
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int main(void){
    char buf[BUFSIZ], * pointPtr;
    int afterPoint;
    double res;
 
    while ( printf("Number: ") && scanf("%[0-9.]", buf) == 1 ){
        if ( ( pointPtr = strchr(buf, '.') ) == NULL ){
            printf("No point found. Some big integer value?\n");
            continue;
        }
        printf("Digits after point: ");
        scanf("%d%*c", &afterPoint);
        if ( ( pointPtr - buf + afterPoint ) < strlen(buf) )
            *(pointPtr + afterPoint + 1) = 0;
        res = atof(buf);
 
        printf("Truncated value: %f\n", res);
    }
 
    return 0;
}
1
exile
0 / 0 / 0
Регистрация: 14.06.2011
Сообщений: 13
25.06.2011, 15:00  [ТС] #12
атя) спасиб, но тут только числа и до 1го пробела - если есть пробел - пиши-пропало) и не сокращает типо если последнее число 5-9 - то не плюсует оно, ну 3.336 - ко второму - 3.34 должно, а оно 3.33
0
voral
455 / 436 / 68
Регистрация: 16.03.2008
Сообщений: 2,130
25.06.2011, 15:25 #13
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int main(void)
{
    int n;
    double num;
    char format[10];
    scanf("%d",&n);
    scanf("%lf",&num);
    sprintf(format,"%%.%df",n);
    printf(format,num);
    return 0;
}
Добавлено через 3 минуты
размерность format конешно можно посчитать и установить исходя из введеного n
0
Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
25.06.2011, 15:26 #14
exile, вопрос надо правильно формулировать, вы так не думаете?

Не по теме:

И давайте обойдемся без всяких "атя, ыть, уть, ять", что это еще за язык? Вас никак не понять.

0
exile
0 / 0 / 0
Регистрация: 14.06.2011
Сообщений: 13
25.06.2011, 15:36  [ТС] #15
правильно - ок.
тема - массивы и строки
задание - вещественные числа сократить к заданному разряду. я как-то пытался обьяснить что к чему, видать у меня с этим проблемки есть)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.06.2011, 15:36
Привет! Вот еще темы с ответами:

Дано действительное число х, натуральное число n. Вычислить:* - C++
x ( x - n )( x - 2 n )( x - 3 n )…( x - n2 ) Добавлено через 6 часов 5 минут жду решения ответьте плиз

Даны натуральное число n, действительное число x. Вычислить: - C++
помогите пожалуйста Даны натуральное число n, действительное число x. Вычислить: вот что я сделал # include &lt;iostream.h&gt;...

Дано действительное число а, натуральное число N. Вычислить : P=a*(a-n)*(a-2*n)*...*(a-n^2) - C++
Решить прикладную задачу с помощью циклического вычислительного процесса. Дано действительное число а, натуральное число N. Вычислить...

Даны натуральное число п, действительное число x. Вычислить - C++
Даны натуральное число п, действительное число x. Вычислить:


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

Или воспользуйтесь поиском по форуму:
15
Yandex
Объявления
25.06.2011, 15:36
Ответ Создать тему
Опции темы

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