Модераторы: PILOT
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите за вознаграждение! Программа на Си, версия 3.1 
:(
    Опции темы
andtim23
Дата 25.12.2006, 23:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 25.12.2006

Репутация: нет
Всего: нет



Задание.

Перевести из восьмеричной системы счисления в десятичную положительное число с фиксированной точкой.

Завтра нужно сдать, ребят кому нечего делать   smile  помогите, думаю для Вас это просто сделать.
Если программу сдам, положу 100 р. на ваш телефон, честное слово!
[email protected]
PM MAIL   Вверх
Romikgy
Дата 26.12.2006, 00:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



а если у мя нет телефона?



--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
paSha_X
Дата 26.12.2006, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 80
Регистрация: 5.12.2006
Где: Беларусь, Минск

Репутация: нет
Всего: 2



 smile  smile  smile 
PM MAIL WWW IM ICQ AOL YIM MSN   Вверх
Romikgy
Дата 26.12.2006, 00:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: нет
Всего: 146



Код

#include <stdio.h>
#include <conio.h>
int main(int argc, char* argv[])
{
        int x;
        printf("Please enter octal int\n");
          scanf("%o",&x);
          printf("\nYou enter value decimal %d\n",x);
        printf("Please press any key ...\n");
        getch();
        return 0;
}

как расплачиваться будешь ? smile


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
zkv
Дата 26.12.2006, 01:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 2
Всего: 92



Цитата(Romikgy @  26.12.2006,  00:26 Найти цитируемый пост)
как расплачиваться будешь ? smile

деньги - на помощь форуму, где то вверху ссылка есть smile 
только вот 
Цитата(andtim23 @  25.12.2006,  23:33 Найти цитируемый пост)
Если программу сдам,

вряд ли препод оценит остроумие smile
PM MAIL   Вверх
GePo
Дата 26.12.2006, 01:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 30.3.2003
Где: Москва

Репутация: нет
Всего: 3



держи, один минус - конечное число в double. Другого способа не знаю:
Код

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void main()
{
    char num[100];
    char *point_pos = NULL, *current;
    double result;

    printf("Enter the decimal number: ");
    scanf("%s", num);
    result = (double)strtol(num, &point_pos, 8);
    
    if (*point_pos) {
        double trac = 0.0;

        if (*point_pos != '.') {
            puts("Number is not octal");
            return;
        }

        current = point_pos;
        while (*current)
            current++;

        while (--current != point_pos) {
            trac = trac/8 + *current - '0';
        }
        result += trac/8;
    }

    printf("%f\n", result);
}

Вещественная точка - это символ точка ;)
--------------------
PM MAIL WWW   Вверх
andtim23
Дата 26.12.2006, 02:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 25.12.2006

Репутация: нет
Всего: нет



Цитата(GePo @ 26.12.2006,  01:32)
держи, один минус - конечное число в double. Другого способа не знаю:
Код

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void main()
{
    char num[100];
    char *point_pos = NULL, *current;
    double result;

    printf("Enter the decimal number: ");
    scanf("%s", num);
    result = (double)strtol(num, &point_pos, 8);
    
    if (*point_pos) {
        double trac = 0.0;

        if (*point_pos != '.') {
            puts("Number is not octal");
            return;
        }

        current = point_pos;
        while (*current)
            current++;

        while (--current != point_pos) {
            trac = trac/8 + *current - '0';
        }
        result += trac/8;
    }

    printf("%f\n", result);
}

Вещественная точка - это символ точка ;)

Это работает?
В любом случае спасибо, завтра попробую сдать.

Это сообщение отредактировал(а) andtim23 - 26.12.2006, 02:24
PM MAIL   Вверх
andtim23
Дата 26.12.2006, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 25.12.2006

Репутация: нет
Всего: нет



GePo, завтра сдавать буду, кинь мне свои данные на маил. Есть ещё задачка одна!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Объявления о найме специалистов"
BearBeer
  • Придерживайтесь правил форума.

  • Если вы предлагаете НЕ удалённую работу, то

    название города и фирмы обязательно указывать уже в названии темы(!)

  • Одна вакансия - одна тема.

    Вам будет удобней следить за ответами, ищущим работу - выбирать.


  • В случае, если у нас возникнут обоснованные подозрения

    о неблагонадежности Вашего электронного адреса, ваш аккаунт будет удалён, а доступ к форуму запрещён!


  • Хотите быстрее найти специалиста? Разместите тогда ваше объявление вверху всех страниц сайта! Тогда его будут ежедневно видеть более 4000 программистов! Обратите внимание на верхний левый угол сайта - там вы найдете дополнительные инструкции при клике на линк.

В случае невыполнения данных правил Ваши сообщения могут быть удалены без предупреждения.


Полный спискок правил. С уважением, BearBeer.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Объявления о найме специалистов | Следующая тема »


 




[ Время генерации скрипта: 0.0726 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.