Sha256: 338e65b01adbdce87cb38baed5b2d5fa1db7ba205a62ff1e3457341ef782af1d

Contents?: true

Size: 1.71 KB

Versions: 10

Compression:

Stored size: 1.71 KB

Contents

/* ------------------------------------------------------------------ */
/* Decimal Number Library Demonstration program                       */
/* ------------------------------------------------------------------ */
/* Copyright (c) IBM Corporation, 2001, 2007.  All rights reserved.   */
/* ----------------------------------------------------------------+- */
/*                                                 right margin -->|  */

// example8.c -- using decQuad with the decNumber module

// compile: example8.c decContext.c decQuad.c
//     and: decNumber.c decimal128.c decimal64.c

#include "decQuad.h"               // decQuad library
#include "decimal128.h"            // interface to decNumber
#include <stdio.h>                 // for printf

int main(int argc, char *argv[]) {
  decQuad a;                       // working decQuad
  decNumber numa, numb;            // working decNumbers
  decContext set;                  // working context
  char string[DECQUAD_String];     // number->string buffer

  if (argc<3) {                    // not enough words
    printf("Please supply two numbers for power(2*a, b).\n");
    return 1;
    }
  decContextDefault(&set, DEC_INIT_DECQUAD); // initialize

  decQuadFromString(&a, argv[1], &set);      // get a
  decQuadAdd(&a, &a, &a, &set);              // double a
  decQuadToNumber(&a, &numa);                // convert to decNumber
  decNumberFromString(&numb, argv[2], &set);
  decNumberPower(&numa, &numa, &numb, &set); // numa=numa**numb
  decQuadFromNumber(&a, &numa, &set);        // back via a Quad
  decQuadToString(&a, string);               // ..

  printf("power(2*%s, %s) => %s\n", argv[1], argv[2], string);
  return 0;
  } // main

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
dec_number-0.2.1 ext/dec_number/decNumber/example8.c
dec_number-0.2.0 ext/dec_number/decNumber/example8.c
dec_number-0.1.6 ext/dec_number/decNumber/example8.c
dec_number-0.1.5 ext/dec_number/decNumber/example8.c
dec_number-0.1.4 ext/dec_number/decNumber/example8.c
dec_number-0.1.3 ext/dec_number/decNumber/example8.c
dec_number-0.1.2 ext/dec_number/decNumber/example8.c
dec_number-0.1.1 ext/dec_number/decNumber/example8.c
dec_number-0.1.0 ext/dec_number/decNumber/example8.c
dec_number-0.0.0 ext/dec_number/decNumber/example8.c