# PBinfo #3141 – atbash – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

Atbash
Cifrul atbash este un cifru de substituție care constă în inversarea alfabetului: prima literă din alfabet se interschimbă cu ultima, a doua cu penultima, etc.

Cerința
Se dă un șir s care conține doar litere mari. Să se aplice cifrul atbash pe el.

Date de intrare
Fișierul de intrare atbash.in conține pe prima linie șirul s.

Date de ieșire
Fișierul de ieșire atbash.out va conține pe prima linie șirul după aplicarea cifrului atbash.

Restricții și precizări

1 ≤ lungimea șirului ≤ 1.000.000

Exemplu:
atbash.in

ANAAREMERE
atbash.out

ZMZZIVNVIV

## Cod sursă C++

```cpp
/// Sursa Vasiluta Mihai-Alexandru
#include <fstream>
using namespace std;
ifstream f("atbash.in");
ofstream g("atbash.out");
char c;
int main()
{
    while(f >> c)
        g << char('Z' - c + 'A');
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/3141)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/3141/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-3141/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
