Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 4 years ago.
Improve this question
I will directly get to the point.
int a,b,c, Number;
a=0;
b=1;
c=2;
Number = (a*100)+(b*10)+(c*1);
printf("%d", Number);
Result is 12.
I also have another variable that which is equal to exactly 12.
int number2 = 12;
Now I have to check the difference between them. How do I do that?
Just use a if statement like below:-
int diff = 0;
if ( Number > number2 )
{
diff = Number - number2;
printf("Number is greater than number2 by %d\n", diff);
}
else if( number2 > Number )
{
diff = number2 - Number;
printf("number2 is greater than Number by %d\n", diff);
}
else
printf("Numbers are equal \n");
Related
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 1 year ago.
Improve this question
Definition: Solving ATM problem
#include <stdio.h>
int main(void)
{
// your code goes here
float x;
float y = 2000;
printf("Instruction: This ATM accepts values which are multiple of 5 \n");
printf("Enter the amount to withdraw: \n");
scanf("%f", &x);
if (x / 5 && x <= y)
{
float z = y - x;
float a = z - 0.5;
printf("Your Transaction is successful\n\n");
printf("Your Account Balance is %f\n\n", a);
}
else
{
printf("Error: %f\n\n", x);
printf("Read the Instruction carefully\n\n");
}
return 0;
}
You can use fmodf to check the remainder of two floats, an example:
#include <stdio.h>
#include <math.h>
int main(void)
{
float a = 25.0f;
float b = 25.1f;
printf("%f divisible by 5 = %s\n", a, fmodf(a, 5.0f) == 0 ? "true" : "false");
printf("%f divisible by 5 = %s\n", b, fmodf(b, 5.0f) == 0 ? "true" : "false");
return 0;
}
Output:
25.000000 divisible by 5 = true
25.100000 divisible by 5 = false
In your case:
if((fmodf(x, 5.0f) == 0) && (x<=y))
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 3 years ago.
Improve this question
This is the task
Input: 1 1
Output: 2
Input: -1 -1
Output: -2
Input: 1.1 2.2
Output: 3.3
I know how to do 2 of 3 task, but I don't know how to include float numbers when I have int numbers.
You can use %g to get expected outputs that you have mentioned.
#include <stdio.h>
int main()
{
float num1 = 0;
float num1 = 0;
float tot = 0;
printf("Enter number 1 = ");
scanf("%f", &num1);
printf("Enter number 2 = ");
scanf("%f", &num2);
tot = num1 + num2;
printf("Output = %g", tot);
return 0;
}
input : 2, 2
output :4
input : 5.5, 5
output: 10.5
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 3 years ago.
Improve this question
Calculating e^x but I'm really new to programming. I've made like two programs before. I've fixed any errors the shell points out yet get zero once it is run.
I have this :
#include <stdio.h>
int main (void) {
float answer = 1.0, x, next_term, n;
int power;
printf("Enter x: ");
scanf("%f", &x);
printf("Enter the number of terms: ");
scanf("%f", &n);
next_term = x;
for (power = 1; power <= n ; power = power + 1) {
answer = answer * next_term;
next_term = next_term * x / (power + 1);
}
printf("exp(%f) = %f\n", x, answer);
return 0;
}
Output:
exp(8.000000) = 0.000000
If you're calculating an infinite series, you want to add the terms, not multiply them... i.e. answer=answer+next_term;
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
For an assignment I need to convert a 16-bit decimal number to a binary number. So for example the number 9 should print 0000000000001001. My professor started us with this code:
void printBinary(short n)
{
}
int main(int argc, char **argv)
{
short n;
printf("Enter number: ");
scanf("%hd", &n);
printBinary(n);
}
I am very confused as to where to go from here. I really would appreciate anyone helping me understand what to do, as I am very new to coding. Thanks in advance.
Try this:
int printBinary(int integer)
{
int remainder, counter = 0, my_binary = 0;
while (integer > 0)
{
remainder = integer % 2;
my_binary += remainder * pow(10, counter);
integer /= 2;
counter++;
}
printf ("Binary is %d\n", my_integer");
}
This has been taken from here.
NOTE: I have the assumption that you want to convert only positive decimals.
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 7 years ago.
Improve this question
I need to create a program that gives the sum of the all the numbers between the constants of a and b given by the user. b needs to be greater than a.
#include <stdio.h>
void main()
{
int index, begno, endno, sum = 0;
printf("Program for sum of all numbers in the given range\n");
printf("Enter Beg. No.: ");
scanf("%d", &begno);
printf("Enter End. No.: ");
scanf("%d", &endno);
index = begno;
for(; index <= endno; index ++)
sum = sum + index;
printf("The sum of even numbers between %d and %d is: %d", begno, endno, sum);
}
The code given looks OK, but if you want the sum without including the last number, as is generally the case you should change the for loop like this
for(; index < endno; index ++)
I would start by implementing a loop to compute:
$$\sum_{n=a}^{b}
n$$