Litery duże i małe
Kod był wyświetlany 874 razy.
    /*
	Name: Litery duże i małe
	Copyright: GPL GNU
	Author: Katrzyna Białas
	Date: 26-03-14 11:47
	Description:
	Program wczytuje z pliku kolejno znaki
	male litery zapisuje do tablicy1
	duze litery zapisuje do tablicy 2
	nastepnie sortuje i naprzemiennie wpisuje do pliku zapis.txt 
	
*/

#include<iostream>
#include<fstream>
#include<stdio.h>
#include<stdlib.h>
#include<algorithm>

using namespace std;

int main()

{

ifstream plik;
plik.open("litery.txt");
if(plik.good() )
cout<<endl;
else return 0;
	
int dlugosc;

//badanie ilosci znakow

plik.seekg(0, ios::end);
dlugosc=plik.tellg();
plik.seekg(0, ios::beg);

int n=dlugosc;

char tab1[n], tab2[n];

int i;
int j;


//czyscimy tablice (wybrany znak to '~' ponieważ jego nr ASCII jest największy
//po sortowaniu powędruje na koniec

for(i=0; i<n; i++)
{
	tab1[i]='~';
	tab2[i]='~';
}


char znak;
int kod;

i=0;
j=0;

while(plik.get(znak))
{
	kod=znak;
	
	if(kod>=97 && kod<=122)
	{
		tab1[i]=znak;
		i++;
	}
	
		if(kod>=65 && kod<=90)
	{
		tab2[j]=znak;
		j++;
	}
}



plik.close();

//sortowanie

for(i=0; i<n-1; i++)
{
	for(j=0; j<n-1; j++)
	{
		if(tab1[j]>tab1[j+1])
		swap(tab1[j], tab1[j+1]);
	}
}


for(i=0; i<n-1; i++)
{
	for(j=0; j<n-1; j++)
	{
		if(tab2[j]>tab2[j+1])
		swap(tab2[j], tab2[j+1]);
	}
}


ofstream plik1;
plik1.open("zapis.txt");
if(plik1.good() )
cout<<endl;
else return 0;

for(i=0; i<n; i++)
{
	if(tab2[i]!='~')
	plik1<<tab2[i];
	
	if(tab1[i]!='~')
	plik1<<tab1[i];
	
}

cout<<"\n\n\tWyniki zapisano do 'zapis.txt'.";
cout<<endl<<endl;
		
plik1.close();	
getchar();
return 0;	
}    
Pobierz plik tekstowy
Załączniki
Administrator WJL
PHP&SQL coded by NOVA-IT