plz explain these function. how can w divide a number by 3 using only atoi function.

Recommended Answers

All 7 Replies

you can't. atoi() converts a string into an integer, has nothing to do with division.

Yup as told by Ancient Dragon, atoi()converts a string into an integer and atof->string to float.

Are you trying to do this:--;)

#include<stdio.h>
int main(void)
{
      char a[]="90";
      int c;
      c=atoi(a)/3;
      printf("%d",c);
      return 0;
}

No. Division by three without using modulo, division operator . Use of only atoi is permitted

After converting the string to int using atoi() you can simulate division by a series of subtraction.

addition of digits of number if divisible by 3 then that number is divisible by 3.
396=3+9+6=18=1+8=9.
1)store 3,6,9 using enum.
2)sum=0
3)input a string a.
4)convert each char into digit using atoi.
5)add that char to sum and store it in sum.
6)assign sum to a.
repeat this process untill you get a single character.
7)check with 3,6,9 if equals then divisible, else not..

I think this will work out.

addition of digits of number if divisible by 3 then that number is divisible by 3.
396=3+9+6=18=1+8=9.
1)store 3,6,9 using enum.
2)sum=0
3)input a string a.
4)convert each char into digit using atoi.
5)add that char to sum and store it in sum.
6)assign sum to a.
repeat this process untill you get a single character.
7)check with 3,6,9 if equals then divisible, else not..

I think this will work out.

No it won't.
A) In order to "4)convert each char into digit using atoi." you need to convert each character into a string first. The overhead for that is huge compared to char - '0' .
B) Then you "6)assign sum to a." But sum is an integer and a is a string. How do you assign an integer to a string?

If you truly think it will work, please post your working code. I'd love to see it...

No it won't.

I think it will because sum of digits of a number if divisible by 3 then that original number is divisible by 3.
If you have some examples making this wrong then please show me.

you need to convert each character into a string first.

yep it's my mistake as atoi is for conversion of strings into number not a character.

If you truly think it will work

Ummm..let me think a bit more about it and sure i will also love to post the code if I am done with it.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.