#include <stdio.h> 
#include <string.h>
/* Define the trade apparatus */
struct trade {double price; int number; char *description;};
/* Define trade array and input buffer array*/
struct trade *trade_pointers[100];
char input_buffer[100];
/* Define price-computing function */
double trade_price (struct trade *x) {
  return x -> price * x -> number;
}
main ( ) {
  /* Declare various variables */
  int limit, counter, number;
  double price;
  /* Read trade information */
  for (limit = 0;
       3 == scanf ("%s%lf%i", input_buffer, &price, &number);
       ++limit) {
    trade_pointers[limit]
      = (struct trade*) malloc (sizeof (struct trade));
    trade_pointers[limit] -> price = price;
    trade_pointers[limit] -> number = number;
    trade_pointers[limit] -> description
      = (char*) malloc (strlen (input_buffer) + 1);
    strcpy (trade_pointers[limit] -> description, input_buffer);
  }
  /* Display report */
  for (counter = 0; counter < limit; ++counter) 
    printf ("%s %f %i %f\n",
            trade_pointers[counter] -> description,
            trade_pointers[counter] -> price,
            trade_pointers[counter] -> number,
            trade_price(trade_pointers[counter]));
}
