Int -laskuri..

Hei kaikki!

Ihan tässä pohdiskellessa juolahti mieleeni sellainen ohjelma jossa annetaan ensin luku ja sen jälkeen ilmoitetaan kuinka monta merkkiä luku oli pitkä, sitten kun aloin suunnitelmiani totetuttamaan niin menikin sormi suuhun, kun loppui taito ja ajatuksenjuoksu yhtäaikaa :)

Eli kuinka pitäisi tehdä sellainen int -laskuri joka laskee kuinka monta merkkiä on syötetty.

Esim.

Jos int iluku = 1234 niin sitten
int merkkienmaara olisi 4.

Onko tähän sitten vaikea lisätä sellaista toimintoa, joka tulostaisi esim. 2 -ensimmäistä merkkiä?

Kielenä käytän c:tä.

Hyvät joulut kaikille koodaajille! :)
4590
Äänestä

Muut lukivat myös

Vastaukset 4

Vanhimmat

tehdä laskuria.

int pituus;

pituus=(int)(1.0 log((double)syotetty_luku));

ja pituus muuttujaan tallentuu syotetty_luku muuttujan merkkien(numeroiden) määrä.

Äänestä

#include /* pow-funktio */

int i;
int ekat=2;
for (i=pituus-1;i>=pituus-ekat;i--)
printf("%d",(int)((syotetty_luku/pow(10,i))%10));

en testannut (pyöräytin ensin paperilla ja tein koodin perään), joten en mene virheistä takuuseen ;)

Äänestä

int n, laskuri = 0;
scanf("%d", &n);
do {
   laskuri++;
} while ( (n /= 10) > 0);
printf("luvun pituus: %d\n", laskuri);

Äänestä

int luvunpituus_tulosta2ekaa (int luku, int tulostuspituus)
{
char s[50];
int len;
sprintf(s,"%d",x); /*luku merkkijonoksi*/
len = strlen(s); /*merkkijonon pituus*/

s[tulostuspituus] = 0;
printf("%s",s); /*tulosta 'tulostuspituus' ekaa merkkiä*/

return len;
}

Äänestä

Kommentoi aloitusta


child_ kirjoitti:

Hei kaikki!

Ihan tässä pohdiskellessa juolahti mieleeni sellainen ohjelma jossa annetaan ensin luku ja sen jälkeen ilmoitetaan kuinka monta merkkiä luku oli pitkä, sitten kun aloin suunnitelmiani totetuttamaan niin menikin sormi suuhun, kun loppui taito ja ajatuksenjuoksu yhtäaikaa :)

Eli kuinka pitäisi tehdä sellainen int -laskuri joka laskee kuinka monta merkkiä on syötetty.

Esim.

Jos int iluku = 1234 niin sitten
int merkkienmaara olisi 4.

Onko tähän sitten vaikea lisätä sellaista toimintoa, joka tulostaisi esim. 2 -ensimmäistä merkkiä?

Kielenä käytän c:tä.

Hyvät joulut kaikille koodaajille! :)

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu