Segítség! Kirúgnak ha ezt nem csinálom meg szombatig! (? )
Már elnézést a hatásvadász címért, de valós problémáról van szó.
A következő feladatot kell C-ben programoznom, "egyetemes" programozással, inputellenőrzésekkel stb.
"400 nál nagyobb egész számokat kellett bekérni és azokat vizsgálni. Tömb méret nem volt megadva. Csak a példában 5 helyiértékes szám volt a legnagyobb azért azt vettem alapul. A számnak páratlan számjegyűnek kellett lennie , és tükrösnek (Pl:12321). A feladat hogy addig kérd be a helyes számot amíg 2 helyes számot nem kapsz.
Hiba üzenetetek:
-nem szám a bemenet
-400nál kisebb a bemenet
-Nem páratlan számjegyű.
-Nem tükrös szám
Aki megcsinálja az 7 éven át szerencsés lesz és megtalálja élete párját. Ja meg a lottó...nyerni fog rajta!
Viccen kívül; az egész egyetemi tanulmányom múlik ezen, aki segít, azzal felveszem a kapcsolatot és meghálálom valahogy.
Melyik része nem megy? Vagy úgy cakkumpak írjuk meg?
az egész egy while ciklusban van, amiből akkor lépsz ki, ha egy változó kettő lesz(ezt a változót akkor növeled, ha megfelel minden kritériumnak a szám)
Bekéred a számot, megnézed 400-nál kisebb-e, illetve, hogy szám-e egyáltalán(ha nem kiírod, hogy nem az)
berakod egy tömbbe
Megnézed a hosszát a tömbnek, ha nem páratlan a számjegyű kiírod, hogy nem páratlan számjegyű
A tükrös számhoz, meg összehasonlítod az első és az utolsó(és így tovább) a számjegyeket(tömb elemeket)
az első for ciklus nem kell neked belőle.
Egyébként ha már ez nem megy akkor érdemes lenne elgondolkodni, hogy biztos jó szakmát választottál.
És itt most nem magára a feladatra gondolok, hanem arra, hogy nem tudod a google-t használni
Ha ezt a kutyaf**a ~50 soros programot nem tudod megcsinálni, összegoogle-zni, akkor nyugodtan rúgjanak ki.
("Kirúgni" egyébként nem egy tárgy miatt szoktak, vagy kreditszám, vagy nagyon sokszor föl kell venned, csupa olyan dolog, amire nem egy hét időd volt)
"A következő feladatot kell C-ben programoznom"
Kulcsszavaknál meg C++ van.
Akkor most melyikben kell megírnod?
Am meddig jutottál vele és hol akadtál el? mi okoz problémát?
23F
Köszönöm a válaszokat, főleg az első kettőt. Persze igazatok van, de azért a probléma ennél összetettebb. A gazdinfo azért nem csak programozásból áll, és eljön még az ideje hogy megtanulok egy nyelvet, de az egyrészt az nem a C lesz, másrészt nem levelezőn, munka mellett fogom csinálni, mert egyszerűen nincs időm semmire.
Nyílván értem a feladatot, de szintaktikailag sokáig tartana összerakni nekem, és most csak egy esélyem van.
A C egy nagyon 'egyszerű' nyelv, de rákényszeríti a használóját a 'logikus gondolkodásra'. Elkezdtem a programodat, nem sokból tart befejezni, a szükséges váltózókat is deklaráltam. Hajrá !!
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main(){
int elso = 0, masodik = 0, darab = 0, hossz, n;
int szam_e = 1, tukres_e = 1, paratlan_e = 0, kisebb_e = 0, volt_elso = 0;
char szam[100];
printf("Kerem a szamot: ");
scanf("%s", szam);
// Megállapítjuk a hosszt és, hogy valójában csak számjegyeket tartalmaz
for(hossz = 0; szam[hossz] != '\0'; ++hossz) if (!isdigit(szam[hossz])) szam_e = 0;
// Ha szám megnézzük, hogy páros-e a számjegyeinek száma
if ((hossz % 2 == 0) && (szam_e == 1)) paratlan_e = 1;
// Ha 2 digit-nél nagyobb megnézzük visszafelé a harmadik helyiértéket, hogy nagyobb-e mint 3
if ((szam_e == 1) && (hossz <= 3)) if (szam[hossz - 3] < '4') kisebb_e = 1;
// Hibaüzenetek
if (szam_e < 1) printf("Nem szam !\n");
if (paratlan_e == 1) printf("A szam paratlan szamjegyu !\n");
if (kisebb_e == 1) printf("A szam kisebb mint 400 !\n");
system("Pause");
return 0;
}
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!