Új hozzászólás Aktív témák
-
Dinter
addikt
válasz
buherton
#5898
üzenetére
Az a környezet, ahol le kell futtatni a programot az, csak így nem tudom letesztelni akkor.
A program a következő: kapom a sorokat standard inputról, amiről el kell dönteni, hogy illeszkedik-e vagy nem a regex mintára. Majd fájl vége jelnél kiiírni az összes/jó sort 8-as számrendszerben. Ez így működik elvileg?
#include <regex.h>
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
int convertDecimalToOctal(int decimalNumber)
{
int octalNumber = 0, i = 1;
while (decimalNumber != 0)
{
octalNumber += (decimalNumber % 8) * i;
decimalNumber /= 8;
i *= 10;
}
return octalNumber;
}
bool reg_matches(const char *str, const char *pattern)
{
regex_t re;
int ret;
if (regcomp(&re, pattern, REG_EXTENDED) != 0)
return false;
ret = regexec(&re, str, (size_t) 0, NULL, 0);
regfree(&re);
if (ret == 0)
return true;
return false;
}
int main()
{
char sor[1000];
int sorok=0;
int jo=0;
const char* pattern="^[^#]_*(0x)?[0-9]*V6.+[A-Z]*.*mmese(B|a)";
while(scanf("%s[^\n]",&sor)!=EOF){
sorok++;
if(reg_matches(sor,pattern)) jo++;
}
int jo8=convertDecimalToOctal(jo);
int sorok8=convertDecimalToOctal(sorok);
printf("%d/%d",sorok8/jo8);
return(0);
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Apple iPhone 12 64GB, Kártyafüggetlen, 1 Év Garanciával
- 27% - ÚJ - XFX Radeon RX 9070 16GB GDDR6 Swift OC Videokártya! BeszámítOK
- LG UltraGear 32GS95UX-B OLED Monitor! 32" 3840x2160 / 480Hz / 0.03ms / FreeSync / G-Sync! BeszámítOK
- 274 - Lenovo Legion Pro 5 (16IAX10H) - Intel Core U9 275HX, RTX 5070Ti
- Bomba ár! Lenovo ThinkPad L14 G2i - i5-11G I 16GB I 256SSD I 14" FHD I Cam I W11 I Gari!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
