I know the title doesn't make a whole lot of sense and I'm going to be terrible at trying to explain it.
I'm trying to write a program that finds the original value from a percentage down and the last known value.
Example:
Bitcoin was at $4420 which was down 4.9% from last month. I'm wanting my program to calculate what that number was.
The way it's currently written, I'm aware that percents must be entered like "0.05" for 5%.
Code:
//
// main.c
// valuefinder
//
// Created by Joshua Ernzen on 10/3/17.
// Copyright © 2017 Joshua Ernzen. All rights reserved.
//
// This program is suppose to find the starting value from a percent down.
// Example: $4,420 is 4.9% down from last month. Find the original value
#include <stdio.h>
#include <stdint.h>
int main() {
double incnumber, usernumber, numberholder, finalnumber, percent;
int8_t loop;
loop = 1;
printf("Please enter the value: ");
scanf("%lf", &usernumber);
printf("Please enter the percentage: ");
scanf("%lf", &percent);
incnumber = usernumber;
while(loop == 1) {
numberholder = incnumber * percent;
finalnumber = numberholder + incnumber;
if(finalnumber - numberholder != usernumber) {
incnumber = incnumber + 0.01;
printf("%lf\n", incnumber);
}
if(finalnumber - numberholder == usernumber)
loop = 0;
}
printf("%lf is %lf of %lf\n", usernumber, percent, finalnumber);
return 0;
}
Right now when it executes, it just takes let's say the value of 5% of 95 (4.75) and just adds it to 95. This happens when I attempt to find 95 is 5% down from last week, which should be 100.