#include<stdio.h> #include <iostream> #include <windows.h> using namespace std; int resultado; int a=4; int b=2; int c=1; int d=0; int comparativa(char op[4]); int operacion(char op[4]); int main(){ while(c==1){ int c=0; char cadena[4]; int ru,rg,ro; char doc[20]; cout<<"ingrese el nombre del archivo txt"<<endl; cin>>doc; system("cls"); cout<<"Seleccione los crácteres segun el permiso que le dara al usuario r (lectura), w (escritura), x (ejecucion) y 0 (ninguno)."<<endl; cout<<"(No puede ingresar dos veces el mismo caracter)"<<endl; cin>>cadena; ru = operacion(cadena); system("cls"); cout<<"Seleccione los crácteres segun el permiso que le dara al grupo r (lectura), w (escritura), x (ejecucion) y 0 (ninguno)."<<endl; cout<<"(No puede ingresar dos veces el mismo caracter)"<<endl; cin>>cadena; rg=operacion(cadena); system("cls"); cout<<"Seleccione los crácteres segun el permiso que le dara a oto r (lectura), w (escritura), x (ejecucion) y 0 (ninguno)."<<endl; cout<<"(No puede ingresar dos veces el mismo caracter)"<<endl; cin>>cadena; ro=operacion(cadena); cout<<ru<<endl; system("cls"); cout<<"El numero a ingresar es: "<<ru<<rg<<ro<<endl; cout<<"-- debera escribir el comando de la siguiente manera: chmod "<<doc<<".txt "<<ru<<rg<<ro<<endl; cout<<"Desea volver a intentarlo, si presione 0 , No presione 1"<<endl; cin>>c; system("cls"); } system("pause"); } int operacion(char op[4]){ int ope; char dos; char tres; for(int i=0;i<strlen(op);i++){ if(op[i]=='r'){ ope = ope+a; } else{ if(op[i]=='w'){ ope = ope+b; } else{ if(op[i]=='x'){ ope = ope+c; } else{ if(op[i]=='0'){ ope = ope + 0; } } } } } return ope; }