Tin học Một số bài tập về C++

Nguyễn Linh_2006

Cựu Mod Hóa
Thành viên
23 Tháng sáu 2018
4,076
12,758
951
Nam Định
THPT chuyên Lê Hồng Phong
[TẶNG BẠN] TRỌN BỘ Bí kíp học tốt 08 môn
Chắc suất Đại học top - Giữ chỗ ngay!!

ĐĂNG BÀI NGAY để cùng trao đổi với các thành viên siêu nhiệt tình & dễ thương trên diễn đàn.

Mọi người giúp em vs ạ! Nhất là ai có trình độ lập trình!
@bé nương nương @Fairy Piece @Nguyễn Hương Trà

Bài 1:
Nhập chữ hoa, in ra chữ thường tương ứng. INPUT Input Output A a Một ký tự là 1 chữ cái hoa OUTPUT In ra ký tự thỏa mãn

Bài 2:
Nhập vào ba số A, B, C, in ra (A - B)×C (A, B, C ≤ 100). INPUT
Ba số nguyên A, B, C cách nhau 1 dấu cách. OUTPUT In ra 1 số nguyên là đáp án.

Bài 3:
Nhập số nguyên A, in ra số lớn gấp đôi A. (A ≤ 100)
INPUT Số nguyên A
OUTPUT In ra số nguyên thỏa mãn.

Bài 4:
Nhập vào số N, in ra số các số nhỏ hơn hoặc bằng N2 và lớn hơn hoặc bằng N + 1 (N ≤ 15); INPUT Số nguyên N OUTPUT Số nguyên thỏa mãn đề bài

Bài 5:
Nhập vào chuỗi Z, in ra chuỗi Z theo thứ tự ngược lại. INPUT Một chuỗi ký tự Z viết liền không dấu OUTPUT Một chuỗi ký tự thỏa mãn đề bài
Input Output oahcnix xinchao
 
  • Like
Reactions: Junery N

Quang Minh 1412_

Banned
Banned
Thành viên
12 Tháng chín 2018
2
28
31
Nam Định
Thcs Trần Đăng Ninh
Mọi người giúp em vs ạ! Nhất là ai có trình độ lập trình!
@bé nương nương @Fairy Piece @Nguyễn Hương Trà

Bài 1:
Nhập chữ hoa, in ra chữ thường tương ứng. INPUT Input Output A a Một ký tự là 1 chữ cái hoa OUTPUT In ra ký tự thỏa mãn

Bài 2:
Nhập vào ba số A, B, C, in ra (A - B)×C (A, B, C ≤ 100). INPUT
Ba số nguyên A, B, C cách nhau 1 dấu cách. OUTPUT In ra 1 số nguyên là đáp án.

Bài 3:
Nhập số nguyên A, in ra số lớn gấp đôi A. (A ≤ 100)
INPUT Số nguyên A
OUTPUT In ra số nguyên thỏa mãn.

Bài 4:
Nhập vào số N, in ra số các số nhỏ hơn hoặc bằng N2 và lớn hơn hoặc bằng N + 1 (N ≤ 15); INPUT Số nguyên N OUTPUT Số nguyên thỏa mãn đề bài

Bài 5:
Nhập vào chuỗi Z, in ra chuỗi Z theo thứ tự ngược lại. INPUT Một chuỗi ký tự Z viết liền không dấu OUTPUT Một chuỗi ký tự thỏa mãn đề bài
Input Output oahcnix xinchao
Bài dễ thế mà k biết làm hả?
 

Nguyễn Trần Tuấn Kiệt

Banned
Banned
Thành viên
7 Tháng ba 2019
21
15
6
21
Phú Yên
THPT Chuyên Hoàng Cơ Minh
Mọi người giúp em vs ạ! Nhất là ai có trình độ lập trình!
@bé nương nương @Fairy Piece @Nguyễn Hương Trà

Bài 1:
Nhập chữ hoa, in ra chữ thường tương ứng. INPUT Input Output A a Một ký tự là 1 chữ cái hoa OUTPUT In ra ký tự thỏa mãn

Bài 2:
Nhập vào ba số A, B, C, in ra (A - B)×C (A, B, C ≤ 100). INPUT
Ba số nguyên A, B, C cách nhau 1 dấu cách. OUTPUT In ra 1 số nguyên là đáp án.

Bài 3:
Nhập số nguyên A, in ra số lớn gấp đôi A. (A ≤ 100)
INPUT Số nguyên A
OUTPUT In ra số nguyên thỏa mãn.

Bài 4:
Nhập vào số N, in ra số các số nhỏ hơn hoặc bằng N2 và lớn hơn hoặc bằng N + 1 (N ≤ 15); INPUT Số nguyên N OUTPUT Số nguyên thỏa mãn đề bài

Bài 5:
Nhập vào chuỗi Z, in ra chuỗi Z theo thứ tự ngược lại. INPUT Một chuỗi ký tự Z viết liền không dấu OUTPUT Một chuỗi ký tự thỏa mãn đề bài
Input Output oahcnix xinchao

Bài 1

int main(void){
Serial.begin(9600);
char count = 1;
while(1){
Serial.print(""+String(count));
_delay_ms(1000);
count++;
}
}

Bài 2

int main(void){
USART_Init(MYUBRR);
int value = 0, integerValue, residual;
while(1){
integerValue = value/10;
residual = value%10;
USART_Transmit(integerValue +48);
USART_Transmit(residual +48);
USART_Transmit(' ');
_delay_ms(1000);
value++;
}
}

Bài 3



#define F_CPU 16000000UL // Clock Speed
#define BAUD 9600
#define MYUBRR F_CPU/16/BAUD-1

#include <avr/io.h>
#include <util/delay.h>
#include <stdlib.h>

int main(){
DDRB = (1<<PB5); // Make pin 5 PORTB - LED built-in of is output
ADCSRB = (1<<ACME); // Enable AIN1 for Analog Comparator Negative Input
ACSR = 0x00; /* Clear ACSR register */

while(1){
if (ACSR & (1<<ACO))/* Check ACO bit of ACSR register */
PORTB =(1<<PB5);

else
PORTB = 0x00;
}
}
Bài 4

For Analog Comparator Negative Input = A0 and PD6 (AIN0) is Analog Comparator Negative Input.
#define F_CPU 16000000UL // Clock Speed
#define BAUD 9600
#define MYUBRR F_CPU/16/BAUD-1

#include <avr/io.h>
#include <util/delay.h>
#include <stdlib.h>

int main()
{
DDRB = (1<<PB5); /* Make pin 7 of PORTC as output */
ADMUX = 0x00; /* Select ADC0 as a -ve pin of comparator */
ADCSRB = (1<<ACME); /* Enable analog comparator */
ACSR = 0x00; /* Clear ACSR resister */
ADCSRA = 0x00; //ADEN = 0, initial value = 0

while(1)
{
if (ACSR & (1<<ACO))/* Check ACO bit of ACSR register */
PORTB =(1<<PB5); /* Turn ON PC7 pin */
else /* If ACO bit is zero */
PORTB = 0x00; /* Then turn OFF PC7 pin */
}
}

Bài 5

Read analog value from pin A0 (PC0) and print out on Serial monitor.

#define F_CPU 16000000UL // Clock Speed
#define BAUD 9600
#define MYUBRR F_CPU/16/BAUD-1

#include <avr/io.h>
#include <util/delay.h>
#include <stdlib.h>

void ADC_Init(){
DDRC=0x0; /* Make ADC in port C as input */

// ADCSRA = (1<<ADEN)|(111)
ADCSRA = 0x87; /* Enable ADC, fr/128 */

ADMUX = 0x40; /* Vref: Avcc, ADC initial channel: 0 */
}

int ADC_Read(char channel){
int Ain, AinLow;

ADMUX=ADMUX|(channel & 0x0f); /* Set input channel to read */
// ADMUX = (100)|(channel&1111)
// 4 channel A0 -> A5: need 4 bit to AND bit with channel

ADCSRA |= (1<<ADSC); /* Start conversion */
while((ADCSRA&(1<<ADIF))==0); /* Monitor end of conversion interrupt */

//1<<ADIF = 0001 0000;
//ADCSRA&(1<<ADIF) = (0b1100 0111)&(0001 0000) = 0x0

// after finishing conversion => ADIF = 1 => ADCSRA = 0b1101 0111
// so ADCSRA&(1<<ADIF) != 0

_delay_us(10);
AinLow = (int)ADCL; /* Read lower byte*/
Ain = (int)ADCH*256; /* Read higher 2 bits and
Multiply with weight */
// Ain = ADCH << 8

Ain = Ain + AinLow;
return(Ain); /* Return digital value*/
}

void USART_Init(unsigned int ubrr) {
/*Set baud rate */
UBRR0H = (unsigned char)(ubrr>>8);
UBRR0L = (unsigned char)ubrr;

//Enable receiver and transmitter
UCSR0B = (1<<RXEN0)|(1<<TXEN0);

/* Set frame format: 8data, 2stop bit */
UCSR0C = (1<<USBS0)|(3<<UCSZ00);
}

void USART_Transmit(unsigned char data){
/* Wait for empty transmit buffer */
while (!(UCSR0A & (1<<UDRE0)));
/* Put data into buffer, sends the data */
UDR0 = data;
}

int main(void){
char adcString[5];
int value;

ADC_Init();

USART_Init(MYUBRR);
char stringToSend[] = "ADC value: ";

while(1){
for (int i=0; i<sizeof(stringToSend)-1;i++){
USART_Transmit(stringToSend);
}
value=ADC_Read(0);
itoa(value,adcString,10); /* Integer to string conversion */
for (int i=0; i<sizeof(adcString)-1;i++){
USART_Transmit(adcString);
}
USART_Transmit('\n');
_delay_ms(2000);
}
}
 
Top Bottom