praegune kellaaeg 23.06.2025 02:07:07
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
õppur01
HV vaatleja
liitunud: 22.03.2012
|
22.03.2012 11:24:38
c++ (vajaks natuke abi) |
|
|
Tervist, probleem seisneb nimelt selles, et kuidas ma saan teha nii, et ta tunneb ära mitu tähte ja numbrit on sisestatud autonumbrimärgis?
Oleks väga tänulik abi eest!
|
|
tagasi üles |
|
 |
Mnator
HV Guru
liitunud: 18.10.2007
|
22.03.2012 11:36:37
|
|
|
Kuna vigu, mida võidakse sisestaja poolt teha, on väga erinevaid, siis kõige kindlam ( ja lihtsam samal ajal ) on analüüsida sisestatud stringi igat märki ükshaaval. Selle analüüsi käigus tuvastad kohe lubamatud sümbolid ja saad samal ajal üle lugeda palju neist olid numbrid ja palju neist tähed. Eri riikide numbrimärkide standardid on erinevad + eritellimusmärgid ..... seega küllalt totter ülesanne koolis antud..............
Aga stringitöötluse harjutamiseks muidugi kõlbab.
|
|
Kommentaarid: 1 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
1 |
|
tagasi üles |
|
 |
neros
HV Guru

liitunud: 26.11.2003
|
22.03.2012 13:20:48
|
|
|
Mnator, OP ei tahtnud mitte teada kuidas ta peaks tundma ära autonumbrimärke, vaid seda, mitu tähte ja numbrit seal on. Ilmselt on ette antud nimistu numbrimärkidest ja seda tuleb analüüsida.
Lahendus on muidugi õige. Analüüsida võid lihtsalt iga tähemärki. Teine võimalus on kasutada regulaaravaldisi ning sealt saad kõik vajalikud korraga.
_________________ GitHub
.NET Core & Azure baasil lahendused ja arhitektuur - kontakt. |
|
Kommentaarid: 48 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
40 |
|
tagasi üles |
|
 |
webromps
HV kasutaja
liitunud: 13.06.2005
|
23.03.2012 11:47:14
|
|
|
Kunagi TTÜs Teodori aines C oli mingi sarnane ülesanne.
Igastahes antud värk peaks töötama
#include <stdio.h> // standardne sisend-väljund
#include <conio.h> // klaviatuur-kuvar
#include <string.h> //stringi pikkuse jaoks 'strlen' ... 'string lenght'
int main(void)
{
char autonr[50]; //reg.number
char c; //kasutan numbri ühik-haaval kindlaks määramiseks, kas tegemist on numbri või tähega
int nr_pikkus; //ilmselgelt reg.numbri pikkus
int pos; //positsioon reg.numbris
int nr=0; //numbrite arv
int ch=0; //tähtede arv
printf("Sisestage auto registreerimisnumber> \n");
scanf("%s", &autonr); //salvestab numbri
nr_pikkus=strlen(autonr); //reg.numbri pikkus, mitu tähemärki, koos nmbritega
pos=0; //positsiooni algväärtustamine 0, see tähendab, alustame sõna algusest ehk esimeset tähest
while(c=autonr[pos++]) {
if(c>='1' && c<='9') {
nr++; //loeb ära, mitu numbrit seal esineb
} else {
ch++; //ülejäänud karakterid
}
getch();
return 0;
}
|
|
|
Kommentaarid: 6 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
4 |
|
tagasi üles |
|
 |
Hazar
Kreisi kasutaja

liitunud: 24.08.2004
|
11.04.2012 23:34:35
|
|
|
webromps kirjutas: |
Kunagi TTÜs Teodori aines C oli mingi sarnane ülesanne. |
ja isegi eelmine aasta oli täpselt sama ülesanne
|
|
Kommentaarid: 29 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
28 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|