Поменять местами первую букву слова со второй, третью с четвертой и т.д - C#
Формулировка задачи:
Здравтсвуйте. Пытаюсь решить задачу: разработать программу, которая для заданной строки s меняет местами первую букву со второй, третью с четвертой и т.д.
Разработал программу для считывания с файла и вывод. Только не могу написать алгоритм которая будет менять местами буквы. Помогите пожалуйста)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace lab6
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button2_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void button1_Click(object sender, EventArgs e)
{
int j,k;
StreamReader read = File.OpenText("input.txt");
StreamWriter write = File.CreateText("output.txt");
k = int.Parse(textBox1.Text);
j = 1;
while (!read.EndOfStream)
{
string str = read.ReadLine();
richTextBox1.Text += str + Environment.NewLine;;
char[] s = str.ToCharArray();
if (j==k)
{
// ???????????????
// write.WriteLine(s);
// richTextBox2.Text += str + Environment.NewLine;
}
j++;
}
read.Close();
write.Close();
}
}
}Решение задачи: «Поменять местами первую букву слова со второй, третью с четвертой и т.д»
textual
Листинг программы
if (s.Length % 2 == 0)
{
while (i <= s.Length)
{
t= s[i-1];
s[i-1]= s[i-2];
s[i-2]= t;
i = i + 2;
}
}
if (s.Length % 2 != 0)
{
while (i <= s.Length-1)
{
t = s[i - 1];
s[i - 1] = s[i - 2];
s[i - 2] = t;
i = i + 2;
}
}
write.WriteLine(s);