0% found this document useful (0 votes)
15 views

code

Uploaded by

taikhoanffao1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views

code

Uploaded by

taikhoanffao1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 14

8.

1
int32_t main()
{
char s[300];
cin.getline(s, 300);
int ans = 0;
for (int i = 0; s[i]; i++) if (s[i] - '0' >= 0 && s[i] - '0' <= 9) {ans = 1; break;}
if (ans) cout << "CHUOI KHONG HOP LE.";
else cout << s;
}
8.2
int myStrlen(char s[]) {
int len = 0;
while (s[len] != '\0') {
len++;
}
return len;
}

void myStrcpy(char s[], int vt, char s1[], int k) {


int i = 0;
while (s1[vt] != '\0' && (k == 0 || i < k)) {
s[i++] = s1[vt++];
}
s[i] = '\0';
}

void myStrcat(char s[], char s1[]) {


int len = myStrlen(s);
int i = 0;
while (s1[i] != '\0') {
s[len++] = s1[i++];
}
s[len] = '\0';
}

void ChenChuoiTaiVitriK(char s[], char s1[], int k) {


int len = myStrlen(s);
char temp[MAX];
int i = 0;

for (i = k; i < len; i++) {


temp[i - k] = s[i];
}
temp[i - k] = '\0';

int j = 0;
for (i = k; s1[j] != '\0'; i++, j++) {
s[i] = s1[j];
}

j = 0;
while (temp[j] != '\0') {
s[i++] = temp[j++];
}
s[i] = '\0';
}

void Chuanhoa(char s[]) {


char result[MAX] = "";
int len = myStrlen(s);
int i = 0;

while (i < len) {


while (i < len && s[i] == ' ') i++;
char temp[MAX] = "";
int j = 0;
while (i < len && s[i] != '.') {
if (!(s[i] == ' ' && (j == 0 || temp[j - 1] == ' '))) {
temp[j++] = s[i];
}
i++;
}
temp[j] = '\0';
myStrcat(result, temp);

if (i < len && s[i] == '.') {


int res_len = myStrlen(result);
if (res_len > 0 && result[res_len - 1] == ' ') {
result[res_len - 1] = '\0';
}
myStrcat(result,".");
i++;
}

while (i < len && s[i] == ' ') i++;


if (i < len) {
myStrcat(result," ");
}
}

int res_len = myStrlen(result);


if (res_len > 0 && result[res_len - 1] == ' ') {
result[res_len - 1] = '\0';
}

myStrcpy(s, 0 , result, 0 );
}
8.3
int myStrlen(char s[], int k = 0)
{
int length = 0;
while (s[k + length] != '\0') length++;
return length;
}

void myMemmove(char s[], int vt, int k)


{
int l = myStrlen(s, 0);
for (int i = vt; i <= l - k; i++) s[i] = s[i + k];
}

void Chuanhoa(char s[])


{
while (s[0] == ' ') myMemmove(s, 0, 1);
int l = myStrlen(s, 0);
while (l > 0 && s[l - 1] == ' ') s[l - 1] = '\0', l--;
for (int i = 0; s[i] != '\0'; i++) if (s[i] == ' ' && s[i + 1] == ' ') myMemmove(s, i,
1), i--;
s[0] = toupper(s[0]);
for (int i = 1; i < l; i++)
{
if (s[i] != ' ')
{
if (s[i - 1] == ' ') s[i] = toupper(s[i]);
else s[i] = tolower(s[i]);
}
}
}
8.4
int myStrcmp(char s1[MAX], char s2[MAX])
{
int i = 0;
while (s1[i] != '\0' || s2[i] != '\0')
{
if (s1[i] != s2[i]) return s1[i] - s2[i];
i++;
}
return 0;
}
int myStrlen(char s[], int k = 0)
{
int length = 0;
while (s[k + length] != '\0') length++;
return length;
}
void DemKyTu(char s[])
{
int freq[256] = {0};
for (int i = 0; i < myStrlen(s); i++) freq[(unsigned char)s[i]]++;
int check[256] = {0};
for (int i = 0; i < myStrlen(s); i++) if (freq[(int)s[i]] && !check[(int)s[i]]) cout <<
s[i] << ": " << freq[(int)s[i]] << endl, check[(int)s[i]] = 1;
}
8.5
int myStrlen(char s[], int k = 0)
{
int l = 0;
while (s[k + l] != '\0') l++;
return l;
}

int myStrcmp(char s1[], char s2[])


{
int i = 0;
while(s1[i] != '\0' && s2[i] != '\0') {if (s1[i] != s2[i]) return s1[i] - s2[i]; i++;}
return s1[i] - s2[i];
}

void myStrcpy(char s[], int vt, char s1[], int k)


{
for (int i = 0; i < k; i++) s1[i] = s[vt + i];
s1[k] = '\0';
}

void DemTieng(char s1[])


{
char words[MAX][MAX]; // lưu các từ xuất hiện trong chuỗi
int count[MAX] = {0}; // lưu số lần xuất hiện tương ứng của
từng từ
int wordCount = 0; // tổng số từ khác nhau trong words[MAX]
int i = 0, len = myStrlen(s1, 0);
while (i < len)
{
while (isspace(s1[i]) && s1[i] != '\0') i++; // bỏ khoảng trắng đầu
chuỗi
if (s1[i] == '\0') break;
int start = i; // vị trà từ hiện tại
while (!isspace(s1[i]) && s1[i] != '\0') i++; // tăng i tới khi gặp khoảng
trắng
char word[MAX];
myStrcpy(s1, start, word, i - start); // cop s1 từ start đén i và o word
bool check = false;
for (int j = 0; j < wordCount; j++) if (myStrcmp(words[j], word) == 0) {count[j]
++, check = true; break;} // kiểm tra từ xuất hiện chưa
int l = myStrlen(word, 0);
if (!check) myStrcpy(word, 0, words[wordCount], l), count[wordCount++] = 1;
}
for (int j = 0; j < wordCount; j++) cout << words[j] << ": " << count[j] << '\n';
}
8.7
int myStrlen(char s[], int k = 0)
{
int l = 0;
while (s[l] != '\0') l++;
return l;
}
void myStrcpy(char s[], int vt, char s1[], int k)
{
for (int i = 0; i < k; i++) s1[i] = s[vt + i];
s1[k] = '\0';
}

bool myStrcat(char s1[], char s2[])


{
int len1 = myStrlen(s1, 0), len2 = myStrlen(s2, 0);
if (len1 + len2 >= MAX) return false; //
for (int i = 0; i < len2; i++) s1[len1 + i] = s2[i];
s1[len1 + len2] = '\0';
return true;
}

void mySubstr(char s[], int b, int count, char ss[])


{
for (int i = 0; i < count; i++) ss[i] = s[b + i];
ss[count] = '\0';
}

int myStrcmp(char s1[], char s2[])


{
int i = 0;
while (s1[i] != '\0' && s2[i] != '\0')
{
if (s1[i] != s2[i]) return s1[i] - s2[i];
i++;
}
return s1[i] - s2[i];
}

void StringReverse(char st[])


{
int l = myStrlen(st, 0), end = l - 1;
char ans[MAX] = "";

while (end >= 0)


{
while (end >= 0 && st[end] == ' ') end--;
if (end < 0) break;

int start = end;


while (start >= 0 && st[start] != ' ') start--;

char word[MAX];
mySubstr(st, start + 1, end - start, word);

if (myStrlen(ans, 0) > 0) myStrcat(ans, " ");


myStrcat(ans, word);

// Chuẩn bị cho từ tiếp theo


end = start - 1;
}

if (myStrlen(ans, 0) > 0) {
myStrcpy(ans, 0, st, myStrlen(ans, 0));
} else {
st[0] = '\0';
}
}
8.8
ChenChuoiTaiVitriK(s, s1, k);
}
}

int myStrlen(char s[], int k = 0)


{
int l = 0;
while (s[k + l] != '\0') l++;
return l;
}

int myStrcmp(char s1[], char s2[])


{
int i = 0;
while(s1[i] != '\0' && s2[i] != '\0') {if (s1[i] != s2[i]) return s1[i] - s2[i]; i++;}
return s1[i] - s2[i];
}

void myStrcpy(char s[], int vt, char s1[], int k)


{
for (int i = 0; i < k; i++) s1[i] = s[vt + i];
s1[k] = '\0';
}

void ChenChuoiTaiVitriK(char s[], char s1[], int k)


{
int lens = myStrlen(s, 0), lens1 = myStrlen(s1, 0);
for (int i = lens - 1; i >= k; i--) s[i + lens1] = s[i];
for (int i = 0; i < lens1; i++) s[k + i] = s1[i];
s[lens1 + lens] = '\0';
cout << s;
}
8.9
int myStrcmp(char s1[], char s2[]) {
int i = 0;
while (s1[i] != '\0' || s2[i] != '\0') {
if (s1[i] < s2[i]) return -1;
if (s1[i] > s2[i]) return 1;
i++;
}
return 0;
}
8.10
if (kt) cout << s1 << s2;
else cout << "Khong noi duoc. Khong du bo nho.";
}

int myStrlen(char s[])


{
int l = 0;
while (s[l] != '\0') l++;
return l;
}

bool myStrcat(char s1[], char s2[])


{
if (myStrlen(s1) + myStrlen(s2) > 254) return false;
return true;
}
9.1
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
int a[n + 5];
for (int i = 0; i < n; i++)
{
cin >> a[i];
if (i % 2 == 1) cout << a[i] << " ";
}
}
9.2
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
int a[n + 5], maxx = 0, ans = 0;
for (int i = 0; i < n; i++) cin >> a[i], maxx = max(maxx, a[i]);
for (int i = 0; i < n; i++) if (maxx == a[i]) ans++;
cout << maxx << '\n' << ans;
}
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n, m;
cin >> n;
int a[n + 5];
for (int i = 1; i <= n; i++) cin >> a[i];
cin >> m;
int b[m + 5];
for (int i = 1; i <= m; i++) cin >> b[i];
int c[n + m + 5];
for (int i = 1; i <= n; i++) c[i] = a[i];
for (int i = 1; i <= m; i++) c[i + n] = b[i];
for (int i = 1; i <= n + m; i++) cout << c[i] << " ";
}
9.5
int myStrlen(char *s)
{
int l = 0;
while (s[l] != '\0') l++;
return l;
}

char* myStrcat(char *s1, char *s2)


{
int l1 = myStrlen(s1), l2 = myStrlen(s2);
for (int i = 0; i <= l2; i++) s1[l1 + i] = s2[i];
return s1;
}
9.6
#include <iostream>
#include <string>
using namespace std;

void chenChuoi(string &s, const string &s1, int k) {


if (k < 0 || k > s.length()) {
cout << "Vi tri " << k << " khong thoa dieu kien." << endl;
} else {
s.insert(k, s1);
cout << s << endl;
}
}

int main() {
string s, s1;
int k;

getline(cin, s);

getline(cin, s1);

cin >> k;

chenChuoi(s, s1, k);

return 0;
}

You might also like